:root{--bg:#1c1c1c;--text:#f5f5f5;--muted:#cfd3dc;--accent:#f3c90e;--accent-ink:#0e0f19;--card:#222;--border:#2b3052;--radius:14px;--radius-sm:9px;--shadow:0 8px 24px #00000040;--shadow-soft:0 4px 12px #0000002e;--maxw:1120px;--step--1:clamp(.9rem, .88rem + .2vw, 1rem);--step-0:clamp(1rem, .95rem + .5vw, 1.125rem);--step-1:clamp(1.25rem, 1rem + 1.2vw, 1.6rem);--step-2:clamp(1.6rem, 1.2rem + 2.2vw, 2.2rem);--step-3:clamp(2.2rem, 1.6rem + 3.5vw, 3.4rem)}html,body{height:100%}body{background:var(--bg);color:var(--text);font:400 var(--step-0)/1.6 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";margin:0}*{box-sizing:border-box}img{border-radius:var(--radius-sm);max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--accent);color:var(--accent-ink)}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem)}.stack{gap:clamp(1rem,2vw,2rem);display:grid}.cluster{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.grid{gap:1.25rem;display:grid}.grid.auto-fit{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.center{text-align:center}.visually-hidden{clip:rect(1px, 1px, 1px, 1px);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.track-mouse{--mouse-x:-20rem;--mouse-y:0%}.spacer{background:var(--border);width:100%;height:2px}.spacer.track-mouse{background:radial-gradient(circle 20rem at var(--mouse-x) var(--mouse-y), var(--accent) 0%, var(--border) 60%)}header{z-index:10;backdrop-filter:saturate(140%)blur(10px);background:color-mix(in oklab, var(--bg) 86%, transparent);border-bottom:1px solid var(--border);position:sticky;top:0}.brand{letter-spacing:.3px;font-weight:700}nav{justify-content:space-between;align-items:center;padding:.8rem 0;display:flex}.nav-links a{border-radius:999px;padding:.5rem .8rem}.nav-links a:focus-visible,.btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.burger{cursor:pointer;background:0 0;border:0;padding:.5rem;display:none}.particles-background{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.particles-background .particles-container{width:25%;min-width:200px;height:100%;min-height:200px;position:absolute;top:0}.particles-background .particles-container#particles-left{left:0}.particles-background .particles-container#particles-right{right:0}main{z-index:1;position:relative}main .blur-overlay{z-index:0;backdrop-filter:blur(3px);pointer-events:none;position:absolute;inset:0}.hero{background:radial-gradient(75% 75% at 0 0,#262a47 0%,#0000 60%);padding:clamp(3rem,6vw,5.5rem) 0;position:relative}.hero-inner{z-index:2;grid-template-columns:1.1fr .9fr;align-items:center;gap:2rem;display:grid;position:relative;overflow-x:hidden}.hero-inner>.hero-text{z-index:2}.hero-inner>.hero-image{justify-content:center;justify-self:start;width:100%;height:100%;display:flex}.hero-inner>.hero-image.lg{left:calc(-1 * var(--maxw) * .3);width:calc(100% + var(--maxw) * .3);position:relative}.hero-inner>.hero-image.lg>svg{width:100%;height:100%;position:absolute;top:0;left:0}.hero-inner>.hero-image.sm{display:none}.hero-inner>.hero-image.sm>picture>img{object-fit:cover;object-position:50% 30%;background-image:linear-gradient(var(--bg), var(--bg)), radial-gradient(circle 20rem at var(--mouse-x) var(--mouse-y), var(--accent) 0%, var(--border));background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000;width:100%;max-height:500px}.hero h1{font-size:var(--step-3);margin:0;line-height:1.1}.tagline{font-size:var(--step-1);color:var(--muted);margin:.5rem 0 0}.cta{margin-top:1.25rem}.btn,button.btn,input[type=submit].btn{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-soft);letter-spacing:.2px;cursor:pointer;font-weight:600;font:inherit;appearance:none;box-sizing:border-box;text-align:inherit;border:0;border-radius:12px;outline:none;align-items:center;gap:.55rem;padding:.8rem 1.1rem;text-decoration:none;display:inline-flex}.btn.sm,button.btn.sm,input[type=submit].btn.sm{padding:.5rem .8rem}.btn.ghost{color:var(--accent);border:1.5px solid color-mix(in oklab, var(--accent) 70%, white 0%);background:0 0}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn:active{transform:translateY(0)}section{z-index:1;margin-bottom:2px;scroll-margin-top:84px;position:relative}section.hero{padding:clamp(3rem,6vw,5.5rem) 0}.inner-container{max-width:var(--maxw);background:var(--bg);border-radius:var(--radius);margin-inline:auto;padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,4vw,2rem);position:relative}.section-head{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.section-head h2{font-size:var(--step-2);margin:0}.bar{background:var(--accent);border-radius:3px;width:64px;height:3px}.about{grid-template-columns:auto 1fr;align-items:start;gap:2rem;display:grid}.avatar{aspect-ratio:1;border-radius:50%;width:250px;padding:3px}.avatar img{filter:invert()}.about p{color:var(--muted);margin:0}.skillset{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.skill{background:var(--card);border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1rem}.skill.track-mouse{--mouse-x:-100%;--mouse-y:0%;background-image:linear-gradient(var(--bg), var(--bg)), radial-gradient(circle 20rem at var(--mouse-x) var(--mouse-y), var(--accent) 0%, var(--border));background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000}.skill h3{font-size:var(--step--1);margin:.2rem 0 .8rem}.meter{background:#2a2e4a;border:1px solid #2f3456;border-radius:999px;height:10px;overflow:hidden}.meter>span{background:linear-gradient(90deg, var(--accent), #ffe98a);height:100%;display:block}.tags{flex-wrap:wrap;gap:.4rem;margin-top:.7rem;display:flex}.tag{color:var(--accent-ink);background:color-mix(in oklab, var(--accent) 90%, white 0%);border:1px solid color-mix(in oklab, var(--accent) 70%, white 0%);border-radius:999px;padding:.25rem .55rem;font-size:.8rem}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-direction:column;display:flex;overflow:hidden}.card.track-mouse{--mouse-x:-100%;--mouse-y:0%;background-image:linear-gradient(var(--bg), var(--bg)), radial-gradient(circle 20rem at var(--mouse-x) var(--mouse-y), var(--accent) 0%, var(--border));background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000}.card-body{flex-direction:column;flex-grow:1;justify-content:space-between;padding:1rem;display:flex}.card h3{font-size:var(--step--1);margin:.2rem 0 .4rem}.card p{color:var(--muted);margin:0 0 .8rem}.card .cluster{justify-content:space-between}.pill{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.25rem .5rem;font-size:.75rem}.timeline{border-left:2px solid var(--accent);padding-left:1.2rem}.titem{margin:0 0 1.2rem;position:relative}.titem:before{content:"";background:var(--accent);width:1rem;height:1rem;box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 30%, transparent);border-radius:50%;position:absolute;top:.4rem;left:calc(-1.7rem - 1px)}.titem h3{font-size:var(--step--1);margin:0 0 .2rem}.tmeta{color:var(--muted);margin:0 0 .4rem;font-size:.92rem}.cv-actions{margin-top:1rem}form{gap:.9rem;width:100%;display:grid}input,textarea{color:var(--text);border:1px solid var(--border);font:inherit;background:#232744;border-radius:12px;width:100%;padding:.85rem 1rem}textarea{resize:vertical;min-height:140px}input::placeholder,textarea::placeholder{color:#9aa0b5}.back-link{color:var(--muted);font-size:var(--step-0);z-index:2;margin-bottom:2rem;display:inline-block;position:relative}.back-link:hover{color:var(--accent);text-decoration:none}.project-hero{text-align:center;z-index:2;margin-bottom:3rem;padding:clamp(2rem,4vw,3rem) 0;position:relative}.project-hero .logo-container{max-width:180px;margin:0 auto 1.5rem}.project-hero .logo-container img{filter:brightness(0)invert()}.project-hero h1{font-size:var(--step-3);color:var(--text);margin:0 0 .5rem}.project-hero .tagline{font-size:var(--step-1);color:var(--muted);margin:0 0 1.5rem;max-width:700px;margin-inline:auto}.project-hero .badges{justify-content:center}.screenshot-frame{background:var(--card);border-radius:var(--radius-sm);box-shadow:var(--shadow);margin:1.5rem 0;padding:1rem}.screenshot-frame img{border-radius:calc(var(--radius-sm) - 2px);background:#fff;max-width:100%;height:auto;display:block}.screenshot-frame .caption{color:var(--muted);font-size:var(--step--1);margin:.75rem 0 0;padding:0 .5rem;line-height:1.5}.student-input-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}.feature-card{flex-direction:column;padding:1.25rem;display:flex}.feature-card h3{font-size:var(--step-0);color:var(--text);margin:.25rem 0 .5rem}.feature-card p{color:var(--muted);font-size:var(--step--1);flex-grow:1;margin:0;line-height:1.5}.feature-card.wide{grid-column:1/-1;margin:1.5rem 0}.tech-card{padding:1.25rem}.tech-card h3{color:var(--accent);font-size:var(--step-0);border-bottom:1px solid var(--border);margin:0 0 .75rem;padding-bottom:.5rem}.tech-card ul{margin:0;padding:0;list-style:none}.tech-card ul li{color:var(--muted);font-size:var(--step--1);padding:.25rem 0;line-height:1.4}.tech-card ul li:before{content:"•";color:var(--accent);margin-right:.4rem;font-weight:700}.contact-cta{text-align:center;border-top:1px solid var(--border);z-index:2;margin-top:3rem;padding-top:2rem;position:relative}.contact-cta p{color:var(--muted);font-size:var(--step-0);margin-bottom:1rem}.results-table{border-collapse:collapse;width:100%;font-size:var(--step--1);margin:1rem 0}.results-table th,.results-table td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem .5rem}.results-table th{color:var(--accent);white-space:nowrap;font-weight:600}.results-table td{color:var(--muted)}.results-table td:first-child{color:var(--text);font-weight:500}.results-table td strong{color:var(--accent);font-weight:600}.results-table tr:hover{background:#f3c90e0d}.code-block{background:var(--card);border-radius:var(--radius-sm);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--step--1);color:var(--text);border:1px solid var(--border);margin:1rem 0;padding:1rem;display:block;overflow-x:auto}.math-display{background:var(--card);border-radius:var(--radius-sm);border:1px solid var(--border);text-align:center;margin:1rem 0;padding:1rem;overflow-x:auto}.math-display .katex-display{margin:.5em 0;overflow:auto hidden}.math-display .katex{font-size:1.2rem}.math-inline{margin:0!important;padding:0!important;display:inline!important}.math-inline .katex{vertical-align:baseline!important;margin:0!important;padding:0!important;font-size:1em!important;display:inline!important}.math-inline .katex-html{display:inline!important}.math-inline .base{margin:0!important;padding:0!important;display:inline-block!important}.references ul{margin:0;padding:0;list-style:none}.references ul li{color:var(--muted);font-size:var(--step--1);margin-bottom:.75rem;padding-left:1.5rem;line-height:1.5;position:relative}.references ul li:before{content:"•";color:var(--accent);font-weight:700;position:absolute;left:0}.problem h3,.solution h3{font-size:var(--step-1);color:var(--text);margin:0 0 .75rem}.problem p,.solution p{color:var(--muted);text-align:justify;hyphens:auto;margin:0;line-height:1.6}footer{color:#b9bfd3;z-index:2;padding:2rem 0;font-size:.95rem;position:relative}@keyframes slide-in{to{transform:translate(0)}}@-webkit-keyframes slide-in{to{-webkit-transform:translate(0%)}}@keyframes rubberBand{0%{transform:scale(1)}30%{transform:scale(1.25,.75)}40%{transform:scale(.75,1.25)}50%{transform:scale(1.15,.85)}65%{transform:scale(.95,1.05)}75%{transform:scale(1.05,.95)}to{transform:scale(1)}}.icon-link{width:2.5rem;height:2.5rem;color:var(--color-text);background-color:#0000;margin:0;padding:0;transition:all .3s ease-out;display:flex}.icon-link:hover{color:var(--accent)}.rubberBand{color:var(--accent);animation-name:rubberBand}.animated{animation-duration:1s;animation-fill-mode:both}@media (width<=900px){.nav-links{background:var(--bg);width:100vw;height:100vh;box-shadow:var(--shadow);border-left:1px solid var(--border);z-index:-1;flex-direction:column;gap:1.5rem;padding:4rem 1.5rem;display:none;position:absolute;top:0;left:0;transform:translate(100%)}.nav-links.open{display:flex;animation:.3s forwards slide-in!important}.nav-links a{padding:.8rem 1.2rem;font-size:1.25rem}.burger{display:block}.hero-inner{grid-template-columns:1fr;overflow:visible}.hero-inner>.hero-image.lg{display:none}.hero-inner>.hero-image.sm{display:block}.about{grid-template-columns:1fr}.avatar{display:none}.section-head{align-items:center}}.print-header,.print-contact-info{display:none}@media print{.print-header,.print-contact-info{display:block}header,.hero,.projects,.contact,footer,.particles,.spacer,.burger,.nav-links,.cta,.cv-actions,.support-links,button[type=submit]{display:none!important}body{color:#000;background:#fff;font-size:11pt;line-height:1.4}.print-header{border-bottom:2px solid #000;align-items:center;gap:1.5rem;margin-bottom:.5rem;padding-bottom:.5rem;display:flex!important}.print-header .print-avatar{object-fit:cover;border-radius:25%;flex-shrink:0;width:80px;height:120px}.print-header .print-contact-info h1{color:#000;margin:0 0 .5rem;font-size:24pt}.print-header .print-contact-info .contact-detail{margin:.25rem 0;font-size:10pt}.print-header .print-contact-info .contact-detail strong{color:#000}.print-header .print-contact-info .contact-detail a{color:#000;text-decoration:none}.print-header .print-contact-info .contact-detail a:after{content:""}section#about .section-head{display:none}section>.inner-container{background-color:#0000;padding:0 0 .5rem}h2{border-bottom:1px solid #000;margin-bottom:1rem;padding-bottom:.5rem;font-size:14pt}h3{font-size:12pt}p{font-size:11pt}.card,.skill,article{margin:0 0 .5rem;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.skillset{display:block}.skill{break-inside:avoid;margin-bottom:1.5rem}.skill h3{color:#000;margin:0 0 .5rem;font-size:12pt}.meter{display:none}.tags{flex-wrap:wrap;gap:.25rem;margin-top:.5rem;display:flex}.tag{color:#000;background:#f0f0f0;border:1px solid #ccc;border-radius:3px;padding:.15rem .5rem;font-size:9pt}.timeline .titem{break-inside:avoid;margin-bottom:1.5rem}.timeline .titem h3{margin:0 0 .25rem}.timeline .titem .tmeta{color:#333;margin:0 0 .5rem;font-size:10pt}.timeline .titem p{margin:0;font-size:11pt}.about p{font-size:11pt;line-height:1.5}.grid.cards.auto-fit{display:block}a{color:#000;text-decoration:none}a:after{content:" (" attr(href) ")";color:#666;font-size:9pt}a[href^=\#]:after{content:""}.bar,.pill,.btn,.btn.ghost,.icon-link{display:none}}
/*# sourceMappingURL=camus.fun.5adec0bc.css.map */
