@import url(https://fonts.googleapis.com/css2?family=Roboto+Serif:ital,opsz,wght@0,8..144,100..900;1,8..144,100..900&display=swap);@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--card-bg:linear-gradient(135deg,#faf1ea,#fbe7e7,#f8effd);--card-bg-hover:linear-gradient(135deg,#fae6d7,#f8d3d3,#edd6f9);--card-border:1px solid #aaa;--header-bg:linear-gradient(-45deg,#430115,#4f156d)}body,html{background-color:#fff;color:#333;font-family:"Roboto Serif",serif;font-optical-sizing:auto;font-style:normal;font-variation-settings:"wdth" 100,"GRAD" 0;font-weight:300;margin:0;padding:0}.App{margin:0 auto;padding-top:60px;text-align:center}img{height:auto;max-width:100%}.profile-photo{border:2px solid #aea6a6;border-radius:40%;height:150px;object-fit:cover;width:150px}.attribution{font-size:.9em;margin-top:1em}.attribution,.attribution a{color:#d4d3d3}.about-me{align-items:center;animation:gradientShift 7s ease infinite;background:linear-gradient(-45deg,#430115,#4f156d);background:var(--header-bg);background-size:400% 400%;color:#fff;display:flex;flex-direction:column;font-size:20px;justify-content:center;margin-bottom:2rem;min-height:20vh;padding:60px}.about-me>p{max-width:1020px}.about-me a{font-weight:500;text-decoration:none;transition:color .3s ease,-webkit-text-decoration .3s ease;transition:color .3s ease,text-decoration .3s ease;transition:color .3s ease,text-decoration .3s ease,-webkit-text-decoration .3s ease}.App a,.about-me a{color:#007bff}.App-header a:hover,a:focus{color:#0056b3;text-decoration:underline}.auth-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.5rem 1rem;transition:background-color .3s ease}.auth-button:hover{background-color:#0056b3}.auth-section{background:#ffffff1a;border-radius:8px;margin-top:1rem;padding:1rem}.auth-section p{color:#fff;margin-bottom:.5rem}@media (max-width:768px){.App-header h1,.App-header p{padding:0 10px}}.header{background-color:#000;box-shadow:0 2px 4px #0000001a;color:#fff;height:30px;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto}.header-name{cursor:pointer;font-size:1.5rem;font-weight:700;margin:0}.header-right{align-items:center;display:flex}.robot-menu{position:relative}.robot-emoji{cursor:pointer;display:inline-block;font-size:1.5rem;transition:transform .3s ease,filter .3s ease;-webkit-user-select:none;user-select:none}.robot-emoji:hover{filter:brightness(1.2)}.robot-emoji.clicked{animation:robotJitter .5s ease}.dropdown-menu{animation:dropdownAppear .3s ease forwards;background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#000;min-width:150px;opacity:0;position:absolute;right:-10px;top:calc(100% + 20px);transform:translateY(-10px);z-index:1001}.dropdown-item{align-items:center;cursor:pointer;display:flex;gap:.5rem;padding:1rem 1.5rem;transition:all .2s ease}.dropdown-item:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.dropdown-item:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.dropdown-item:hover{background-color:#f0f0f0;transform:translateX(5px)}.dropdown-item:active{background-color:#e5e5e5;transform:translateX(5px) scale(.98)}@keyframes robotJitter{0%{transform:rotate(0deg)}25%{transform:rotate(10deg)}50%{transform:rotate(-10deg)}75%{transform:rotate(5deg)}to{transform:rotate(0deg)}}@keyframes dropdownAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1240px){.dropdown-menu{right:-10px}}.not-found{align-items:center;animation:gradientShift 7s ease infinite;background:var(--header-bg);background-size:400% 400%;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.not-found-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;max-width:600px;padding:2rem}.not-found h1{color:#fff;font-size:2.5rem;font-weight:500;margin-bottom:1rem}.not-found p{color:#ffffffe6;font-size:1.2rem;margin-bottom:2rem}.not-found-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.back-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.back-button:hover{background-color:#0056b3;transform:translateY(-2px)}.github-link{background-color:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fff;font-size:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.github-link:hover{background-color:#fff3;transform:translateY(-2px)}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.Projects-container{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;padding:20px}.Projects-container>div{padding:1em;width:300px}.ProjectCard{align-items:center;background:var(--card-bg);border:var(--card-border);border-radius:8px;display:flex;flex:0 0 250px;flex-direction:column;flex-wrap:wrap;overflow:hidden;transition:background .5s ease-in-out,box-shadow .3s ease-in-out}.ProjectCard:hover{background:var(--card-bg-hover);box-shadow:0 4px 8px #0000001a;transform:scale(1.05)}.ProjectCard:hover img,.ProjectCard:hover video{opacity:.9}.ProjectCard img,.ProjectCard video{border-bottom:1px solid #ddd;display:block;height:auto;height:40%;object-fit:cover;object-position:center top;transition:opacity .3s ease;width:100%}.ProjectCard div.links-row{align-items:center;display:flex;flex-wrap:nowrap;justify-content:center;margin-top:auto;padding-bottom:.8em}.ProjectCard h2,.ProjectCard h3{font-size:1em;margin:.5em;padding:0 15px}.ProjectCard .Authors,.Venue{color:#686161}.ProjectCard p{font-size:.8em;padding:0 15px;text-align:left}@media (max-width:480px){.Projects-container{grid-template-columns:1fr}.ProjectCard{margin:.5em auto;max-width:90%}}.timeline-hypercontainer{display:grid;display:block;margin-left:auto;margin-right:auto;place-items:center;align-items:center;text-align:center}.timeline-container{display:inline-block;padding-left:30px;position:relative;text-align:left}.timeline-item{background:var(--card-bg);border:var(--card-border);border-radius:8px;margin-bottom:40px;margin-left:40px;margin-right:40px;max-width:700px;padding:0 20px;position:relative;transition:background .5s ease-in-out,box-shadow .3s ease-in-out}.timeline-item:hover{background:var(--card-bg-hover);box-shadow:0 4px 8px #0000001a}.timeline-container:before{background-color:#cbc6c6;bottom:0;content:"";left:30px;position:absolute;top:0;width:2px}.timeline-item:before{background-color:#333;border-radius:50%;content:"";height:12px;left:-46px;position:absolute;top:50%;width:12px;z-index:1}.aboutme{--ef-cream:#f4efe3;--ef-cream-deep:#ece4d2;--ef-ink:#111;--ef-red:#ff3b1f;--ef-muted:#5c574c;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;align-items:center;background:var(--ef-cream-deep);color:var(--ef-ink);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;inset:0;line-height:1.55;overflow:hidden;padding:76px 12px 12px;position:fixed}.aboutme__stage{align-items:stretch;display:flex;flex:1 1;max-width:460px;min-height:0;position:relative;width:100%}.aboutme__track{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.aboutme__track::-webkit-scrollbar{display:none}.aboutme__slide{align-items:center;display:flex;flex:0 0 100%;justify-content:center;min-width:100%;padding:10px 8px;scroll-snap-align:center}.a2card{background:var(--ef-cream);border:2px solid var(--ef-ink);box-shadow:5px 5px 0 var(--ef-ink);display:flex;flex-direction:column;height:min(74vh,620px);max-height:100%;overflow:hidden;width:min(86vw,392px)}.a2card__pad{flex:1 1;overflow-y:auto;padding:22px 19px}.a2card__center{display:flex;flex-direction:column;justify-content:center}.a2card__eyebrow{color:var(--ef-red);display:block;font-size:.72rem;letter-spacing:.16em;margin-bottom:14px;text-transform:uppercase}.a2card__eyebrow,.a2card__title{font-family:Space Grotesk,sans-serif;font-weight:700}.a2card__title{font-size:clamp(1.5rem,6.5vw,2rem);letter-spacing:-.02em;line-height:1.05;margin:0 0 16px}.a2card p{font-size:1rem;margin:0 0 14px}.a2card__tldr{font-size:1.12rem;line-height:1.45}.a2card__tldr strong{color:var(--ef-red);font-family:Space Grotesk,sans-serif}.a2card__note{color:var(--ef-muted);font-size:.9rem}.a2card mark{background:var(--ef-red);border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:var(--ef-cream);font-weight:500;margin:0 -.04em;padding:.06em .3em}.a2themes{margin:4px 0 8px}.a2theme{border-top:2px solid var(--ef-ink)}.a2theme:last-of-type{border-bottom:2px solid var(--ef-ink)}.a2theme>summary{align-items:baseline;cursor:pointer;display:flex;font-family:Space Grotesk,sans-serif;font-size:1.02rem;font-weight:600;gap:10px;letter-spacing:-.01em;list-style:none;padding:13px 2px}.a2theme>summary::-webkit-details-marker{display:none}.a2theme__num{color:var(--ef-red);font-size:.78rem;font-weight:700}.a2theme__title{flex:1 1}.a2theme__plus{color:var(--ef-red);font-weight:700;transition:transform .2s ease}.a2theme[open] .a2theme__plus{transform:rotate(45deg)}.a2theme>p{color:var(--ef-muted);font-size:.92rem;margin:0 0 14px}.a2logos{align-items:center;display:flex;flex-wrap:wrap;gap:18px 26px;margin:20px 0 4px}.a2logos__logo{display:block;object-fit:contain;width:auto}.a2logos__logo.is-glyph{height:30px}.a2logos__logo.is-word{height:24px;max-width:140px}.a2card__note sup{color:var(--ef-red);font-weight:700}.a2card__hint{color:var(--ef-muted);font-family:Space Grotesk,sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.14em;margin-top:22px;text-transform:uppercase}.a2card a{color:var(--ef-ink);text-decoration:underline;text-decoration-color:var(--ef-red);text-decoration-thickness:2px;text-underline-offset:2px}.a2bonus{list-style:none;margin:6px 0 0;padding:0}.a2bonus li{align-items:baseline;border-top:1px solid #11111129;display:flex;gap:12px;justify-content:space-between;padding:9px 2px}.a2bonus li:last-child{border-bottom:1px solid #11111129}.a2bonus a{font-family:Space Grotesk,sans-serif;font-size:1rem;font-weight:600}.a2bonus__url{color:var(--ef-muted);font-size:.8rem;white-space:nowrap}.a2card__project{display:flex;flex-direction:column;height:100%}.a2card__img{background:var(--ef-cream-deep);border-bottom:2px solid var(--ef-ink);flex-shrink:0;height:46%;overflow:hidden}.a2card__img img{display:block;height:100%;object-fit:cover;pointer-events:none;width:100%}.a2card__project .a2card__pad{padding:18px 19px}.a2card__backlink{font-size:.95rem;font-weight:500}.a2card__backlink,.a2card__foot{font-family:Space Grotesk,sans-serif}.a2card__foot{color:var(--ef-muted);display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px 18px;letter-spacing:.04em;margin-top:26px}.aboutme__edge{align-items:center;background:var(--ef-cream);border:2px solid var(--ef-ink);border-radius:50%;color:var(--ef-ink);cursor:pointer;display:flex;font-size:1.1rem;height:34px;justify-content:center;line-height:1;position:absolute;top:50%;transform:translateY(-50%);width:34px;z-index:2}.aboutme__edge--l{left:-4px}.aboutme__edge--r{right:-4px}.aboutme__edge:disabled{cursor:default;opacity:.25}@media (pointer:coarse){.aboutme__edge{display:none}}.aboutme__dots{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;padding:10px 0 2px}.aboutme__dot{-webkit-tap-highlight-color:transparent;background:#0000;border:0;cursor:pointer;height:24px;padding:0;position:relative;width:24px}.aboutme__dot:after{background:var(--ef-muted);border-radius:50%;content:"";height:7px;left:50%;opacity:.35;position:absolute;top:50%;transform:translate(-50%,-50%);transition:transform .15s ease,opacity .15s ease;width:7px}.aboutme__dot.is-active:after{background:var(--ef-red);opacity:1;transform:translate(-50%,-50%) scale(1.4)}.frequency-container{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:84px 16px 40px}.frequency-content{background:#fffffff5;border-radius:20px;box-shadow:0 20px 40px #00000026;box-sizing:border-box;max-width:560px;padding:28px 24px;text-align:center;width:100%}.freq-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.frequency-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;font-weight:700;margin:0}.freq-score{align-items:flex-end;display:flex;flex-direction:column;line-height:1.1}.freq-score-num{color:#4a3a8f;font-size:1.6rem;font-weight:700}.freq-score-label{color:#777;font-size:.75rem}.topic-card{background:#f5f3fb;border:1px solid #e3def5;border-radius:16px;margin-bottom:20px;padding:16px 16px 8px}.topic-eyebrow{color:#8a80b8;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.topic-subject{color:#2a2250;font-size:1.4rem;font-weight:600;line-height:1.25;margin:4px 0}.topic-scale{color:#6a5fa0;font-size:.95rem}.step{align-items:center;animation:stepIn .25s ease;display:flex;flex-direction:column;gap:14px}@keyframes stepIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step-label{color:#764ba2;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.step-text{color:#444;font-size:1rem;line-height:1.45;margin:0;max-width:440px}.secret-number{color:#4a3a8f;font-size:4.5rem;font-weight:800;line-height:1}.result-points{color:#2e9d57;font-size:3.5rem;font-weight:800;line-height:1}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:14px;box-shadow:0 6px 18px #667eea59;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:600;max-width:360px;min-height:48px;padding:12px 24px;transition:transform .15s ease,box-shadow .15s ease;width:100%}.primary-button:hover:not(:disabled){box-shadow:0 10px 24px #667eea73;transform:translateY(-1px)}.primary-button:disabled{background:#d8d5e6;box-shadow:none;color:#8d88a8;cursor:not-allowed}.link-button{background:none;border:none;border-radius:8px;color:#6a5fa0;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 10px}.link-button:hover{background:#f0edf9;color:#4a3a8f}.link-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}button{font-family:inherit}.ruler-track:focus-visible,button:focus-visible{outline:3px solid #a99bf0;outline-offset:2px}.help-list{color:#555;font-size:.92rem;line-height:1.5;margin:0;max-width:440px;padding-left:22px;text-align:left}.ruler{width:100%}.ruler-ends{color:#4a3a8f;display:flex;font-size:.9rem;font-weight:600;justify-content:space-between;margin-bottom:40px}.ruler-track{background:linear-gradient(90deg,#ece8fb,#b9aaf0 50%,#5a3c9e);border:2px solid #d6cff3;border-radius:12px;height:64px;position:relative;touch-action:none;user-select:none;-webkit-user-select:none}.ruler-track.interactive{cursor:ew-resize}.ruler-hint{align-items:center;color:#4a3a8f;display:flex;font-size:.9rem;font-weight:600;inset:0;justify-content:center;pointer-events:none;position:absolute}.ruler-ticks{color:#888;display:flex;font-size:.75rem;justify-content:space-between;margin-top:32px;padding:0 2px}.marker{border-radius:2px;bottom:-10px;pointer-events:none;top:-10px;width:4px}.marker,.marker-label{position:absolute;transform:translateX(-50%)}.marker-label{border-radius:10px;box-sizing:border-box;color:#fff;font-size:.85rem;font-weight:700;left:50%;min-width:34px;padding:2px 6px;top:-26px}.marker-guess,.marker-guess .marker-label{background:#f5576c}.marker-target,.marker-target .marker-label{background:#1f1b3a}.marker-guess~.marker-target .marker-label,.marker-target~.marker-guess .marker-label{bottom:-26px;top:auto}.legend{color:#555;display:flex;font-size:.85rem;gap:18px}.dot{border-radius:50%;display:inline-block;height:10px;margin-right:6px;width:10px}.dot-guess{background:#f5576c}.dot-target{background:#1f1b3a}@media (max-width:480px){.frequency-container{padding:76px 10px 32px}.frequency-content{padding:20px 16px}.topic-subject{font-size:1.2rem}.secret-number{font-size:3.8rem}.ruler-track{height:72px}}@media (prefers-reduced-motion:reduce){.step{animation:none}.primary-button{transition:none}}
/*# sourceMappingURL=main.946ec061.css.map*/