@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&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}.gaydar-app{background:#fff;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:300;min-height:100vh}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#fff;border-bottom:1px solid #f0f0f0;color:#000;padding:40px 20px;text-align:center}.app-header h1{color:#000;font-size:3rem;font-weight:900;letter-spacing:-.02em;margin:0}.app-header p{color:#666;font-size:1.2rem;font-weight:300;letter-spacing:.01em;margin:20px 0 0}.app-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px}.analyzing-screen,.error-screen,.welcome-screen{max-width:400px;text-align:center;width:100%}.analyzing-content,.error-content,.welcome-content{background:#fff;border:1px solid #f0f0f0;border-radius:0;box-shadow:none;padding:60px 40px}.analyzing-icon,.error-icon,.welcome-icon{display:block;font-size:4rem;margin-bottom:20px}.analyzing-content h2,.error-content h2,.welcome-content h2{color:#000;font-size:2.2rem;font-weight:800;letter-spacing:-.01em;margin:0 0 20px}.analyzing-content p,.error-content p,.welcome-content p{color:#666;font-size:1.1rem;font-weight:300;letter-spacing:.005em;line-height:1.6;margin:0 0 40px}.retry-btn,.start-btn{background:#000;border:2px solid #000;border-radius:0;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:700;letter-spacing:.02em;margin:0 0 20px;padding:20px 60px;text-transform:uppercase;transition:all .2s ease}.retry-btn:hover,.start-btn:hover{background:#fff;border:2px solid #000;color:#000}.close-btn{font-size:1.1rem;font-weight:600;letter-spacing:.01em;margin:0 10px;padding:15px 40px;text-transform:uppercase}.app-info{border-top:1px solid #f0f0f0;margin-top:50px;padding-top:30px}.app-info h3{color:#000;font-size:1.4rem;font-weight:700;letter-spacing:-.005em;margin:0 0 25px}.app-info ul{list-style:none;margin:0;padding:0}.app-info li{color:#666;font-size:1rem;font-weight:300;letter-spacing:.003em;margin:15px 0;padding-left:0;position:relative}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f0f0f0;border-radius:0;border-top-color:#000;height:50px;margin:30px auto;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.app-header h1{font-size:2rem}.app-header p{font-size:1rem}.analyzing-content,.error-content,.welcome-content{margin:10px;padding:30px 20px}.analyzing-icon,.error-icon,.welcome-icon{font-size:3rem}.retry-btn,.start-btn{font-size:1.1rem;padding:12px 30px}}@media (min-width:768px){.app-header h1{font-size:3rem}.analyzing-content,.error-content,.welcome-content{padding:50px 40px}.analyzing-icon,.error-icon,.welcome-icon{font-size:5rem}}.camera-overlay{align-items:center;background:#fff;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.camera-container{background:#fff;border:1px solid #f0f0f0;border-radius:0;box-shadow:none;max-width:400px;overflow:hidden;width:100%}.camera-header{border-bottom:1px solid #f0f0f0;justify-content:space-between;padding:20px 30px}.camera-header,.close-btn,.switch-btn{align-items:center;background:#fff;color:#000;display:flex}.close-btn,.switch-btn{border:2px solid #000;border-radius:0;cursor:pointer;font-size:18px;font-weight:700;height:45px;justify-content:center;transition:all .2s ease;width:45px}.close-btn:hover,.switch-btn:hover{background:#000;color:#fff}.camera-header h3{color:#000;font-size:1.4rem;font-weight:800;letter-spacing:-.01em;margin:0}.camera-view{background:#000;height:300px;overflow:hidden;position:relative;width:100%}.webcam{height:100%;object-fit:cover;width:100%}.camera-controls{border-top:1px solid #f0f0f0;padding:30px}.camera-controls,.capture-btn{background:#fff;display:flex;justify-content:center}.capture-btn{align-items:center;border:3px solid #000;border-radius:0;color:#000;cursor:pointer;font-size:32px;font-weight:700;height:100px;transition:all .2s ease;width:100px}.capture-btn:hover{background:#000;color:#fff}.capture-btn:disabled{background:#f0f0f0;border-color:#ccc;color:#999;cursor:not-allowed}.capture-btn.capturing{animation:pulse 1s infinite;background:#000;color:#fff}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.camera-instructions{background:#fff;border-top:1px solid #f0f0f0;padding:20px 30px;text-align:center}.camera-instructions p{color:#666;font-size:1rem;font-weight:300;letter-spacing:.005em;margin:0}@media (max-width:480px){.camera-container{margin:20px;max-width:calc(100% - 40px)}.camera-view{height:250px}.capture-btn{font-size:28px;height:70px;width:70px}}.results-overlay{align-items:center;background:#fff;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.results-container{background:#fff;border:1px solid #f0f0f0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}.results-header{align-items:center;background:#fff;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:30px}.results-header h2{color:#000;font-size:1.8rem;font-weight:800;letter-spacing:-.01em;margin:0}.close-btn{align-items:center;background:#fff;border:2px solid #000;border-radius:0;color:#000;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:45px;justify-content:center;transition:all .2s ease;width:45px}.close-btn:hover{background:#000;color:#fff}.results-content{flex:1 1;overflow-y:auto;padding:20px}.main-result{background:#fff;border:2px solid #000;border-radius:0;margin-bottom:40px;padding:40px 30px;text-align:center}.orientation-display{margin-bottom:30px}.orientation-badge{background:#fff;border:3px solid #000;border-radius:0;color:#000;display:inline-block;font-size:2rem;font-weight:900;letter-spacing:.05em;padding:20px 50px;text-transform:uppercase}.confidence-display{margin-top:20px}.confidence-label{color:#666;display:block;font-size:1rem;font-weight:300;letter-spacing:.01em;margin-bottom:10px}.confidence-bar{background:#fff;border:2px solid #000;border-radius:0;color:#000;display:inline-block;font-size:1.5rem;font-weight:800;min-width:100px;padding:15px 30px;text-align:center}.analysis-section,.debug-section,.details-section,.emotions-section,.features-section{margin-bottom:25px}.analysis-section h3,.debug-section h3,.details-section h3,.emotions-section h3,.features-section h3{color:#000;font-size:1.4rem;font-weight:700;letter-spacing:-.005em;margin:0 0 20px}.detail-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#666;font-size:1rem;font-weight:300;letter-spacing:.005em}.detail-value{color:#000;font-size:1rem;font-weight:600}.features-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.feature-item{background:#fff;border:1px solid #f0f0f0;border-radius:0;padding:20px;text-align:center}.feature-label{color:#666;display:block;font-size:.9rem;font-weight:300;letter-spacing:.02em;margin-bottom:8px;text-transform:uppercase}.feature-value{color:#000;display:block;font-size:1.2rem;font-weight:700}.emotions-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.emotion-item{align-items:center;background:#fff;border:1px solid #f0f0f0;border-radius:0;display:flex;justify-content:space-between;padding:15px 20px}.emotion-label{color:#000;font-size:1rem;font-weight:300;letter-spacing:.005em}.emotion-confidence{color:#000;font-size:1rem;font-weight:700}.results-actions{background:#fff;border-top:1px solid #f0f0f0;display:flex;gap:20px;padding:30px}.action-btn{border:2px solid #000;border-radius:0;cursor:pointer;flex:1 1;font-size:1.1rem;font-weight:600;letter-spacing:.01em;padding:18px 30px;text-transform:uppercase;transition:all .2s ease}.action-btn.primary{background:#000;color:#fff}.action-btn.primary:hover,.action-btn.secondary{background:#fff;color:#000}.action-btn.secondary:hover{background:#000;color:#fff}.debug-content{background:#f8f8f8;border:1px solid #e0e0e0;border-radius:0;padding:20px}.debug-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:10px 0}.debug-item:last-child{border-bottom:none}.debug-label{color:#666;font-size:.9rem;font-weight:300;letter-spacing:.005em}.debug-value{color:#000;font-family:Courier New,monospace;font-size:.9rem;font-weight:600}.analysis-content{background:#f0f8ff;border:1px solid #b0d4f1;border-radius:0;padding:20px}.analysis-item{align-items:center;border-bottom:1px solid #d0e8f7;display:flex;justify-content:space-between;padding:12px 0}.analysis-item:last-child{border-bottom:none}.analysis-label{color:#666;font-size:1rem;font-weight:300;letter-spacing:.005em}.analysis-value{color:#000;font-size:1rem;font-weight:600}@media (max-width:480px){.results-container{margin:10px;max-width:calc(100% - 20px)}.results-header h2{font-size:20px}.orientation-badge{font-size:20px;padding:12px 25px}.emotions-grid,.features-grid{grid-template-columns:1fr}.results-actions{flex-direction:column}}:root{--black:#000;--white:#fff;--gray-100:#f5f5f5;--gray-200:#e5e5e5;--gray-300:#d4d4d4;--gray-400:#a3a3a3;--gray-500:#737373;--gray-600:#525252;--gray-700:#404040;--gray-800:#262626;--gray-900:#171717;--film-grain:#00000008}*{box-sizing:border-box;margin:0;padding:0}body{background:#fff;background:var(--white);color:#000;color:var(--black);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;font-weight:400;line-height:1.6;min-height:100vh;overflow-x:hidden}body:before{background:radial-gradient(circle at 25% 25%,#00000008 0,#0000 50%),radial-gradient(circle at 75% 75%,#00000008 0,#0000 50%),radial-gradient(circle at 50% 50%,#00000008 0,#0000 50%);background:radial-gradient(circle at 25% 25%,var(--film-grain) 0,#0000 50%),radial-gradient(circle at 75% 75%,var(--film-grain) 0,#0000 50%),radial-gradient(circle at 50% 50%,var(--film-grain) 0,#0000 50%);content:"";height:100%;left:0;opacity:.4;pointer-events:none;z-index:1}.navbar,body:before{position:fixed;top:0;width:100%}.navbar{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #e5e5e5;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1rem 2rem;z-index:999}.nav-logo{color:#000;color:var(--black);font-family:Inter,sans-serif;font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.nav-links-container{align-items:center;display:flex;gap:2rem}.nav-links{border-bottom:2px solid #0000;color:#525252;color:var(--gray-600);font-family:Inter,sans-serif;font-size:.9rem;font-weight:400;padding:.5rem 0;position:relative;text-decoration:none;transition:all .2s ease}.nav-links.active,.nav-links:hover{border-bottom-color:#000;border-bottom-color:var(--black);color:#000;color:var(--black)}.nav-links.active{font-weight:500}.main-content{margin-top:80px;min-height:calc(100vh - 80px)}.display-large{font-size:clamp(3rem,8vw,8rem);font-weight:300;letter-spacing:-.04em;line-height:.9}.display-large,.display-medium{color:#000;color:var(--black);font-family:Inter,sans-serif}.display-medium{font-size:clamp(2rem,6vw,4rem);font-weight:400;letter-spacing:-.02em;line-height:1.1}.heading-large{font-size:clamp(1.5rem,4vw,2.5rem);letter-spacing:-.01em;line-height:1.2}.heading-large,.heading-medium{color:#000;color:var(--black);font-family:Inter,sans-serif;font-weight:500}.heading-medium{font-size:1.5rem;line-height:1.3}.body-large{color:#404040;color:var(--gray-700);font-size:1.125rem}.body-large,.body-medium{font-family:Inter,sans-serif;font-weight:400;line-height:1.6}.body-medium{color:#525252;color:var(--gray-600);font-size:1rem}.caption{color:#737373;color:var(--gray-500);font-family:Inter,sans-serif;font-size:.875rem;font-weight:400;letter-spacing:.05em;line-height:1.4;text-transform:uppercase}.home-container{min-height:calc(100vh - 80px);position:relative}.hero-section,.home-container{display:flex;flex-direction:column}.hero-section{align-items:flex-start;justify-content:center;margin:0 auto;max-width:1200px;min-height:70vh;padding:4rem 2rem;width:100%}.hero-title{margin-bottom:2rem}.hero-subtitle{margin-bottom:3rem;max-width:600px}.hero-actions{display:flex;flex-wrap:wrap;gap:2rem}.btn-primary{background:#000;background:var(--black);border:2px solid #000;border:2px solid var(--black);color:#fff;color:var(--white);cursor:pointer;display:inline-block;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;padding:1rem 2rem;text-decoration:none;transition:all .2s ease}.btn-primary:hover,.btn-secondary{background:#fff;background:var(--white);color:#000;color:var(--black)}.btn-secondary{border:2px solid #000;border:2px solid var(--black);cursor:pointer;display:inline-block;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;padding:1rem 2rem;text-decoration:none;transition:all .2s ease}.btn-secondary:hover{background:#000;background:var(--black);color:#fff;color:var(--white)}.portfolio-container{margin:0 auto;max-width:1400px;padding:2rem}.portfolio-header{margin-bottom:6rem;padding:4rem 0;position:relative;text-align:center}.portfolio-hero-image{border:1px solid #e5e5e5;border:1px solid var(--gray-200);height:600px;margin:3rem auto;max-width:600px;overflow:hidden;position:relative;width:100%}.portfolio-hero-image img{filter:grayscale(100%) contrast(1.1);height:100%;object-fit:cover;transition:all .3s ease;width:100%}.portfolio-hero-image:hover img{filter:grayscale(0) contrast(1);transform:scale(1.02)}.portfolio-hero-image:after{background:linear-gradient(45deg,#0000,#0000000d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.about-section{grid-gap:4rem;align-items:start;display:grid;gap:4rem;grid-template-columns:1fr 2fr;margin:6rem 0}.about-label{position:sticky;top:120px}.about-content{display:flex;flex-direction:column;gap:2rem}.skills-section{margin:6rem 0}.skills-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:3rem}.skill-category{gap:1rem}.skill-category,.skill-list{display:flex;flex-direction:column}.skill-list{gap:.5rem;list-style:none}.skill-list li{border-bottom:1px solid #f5f5f5;border-bottom:1px solid var(--gray-100);color:#525252;color:var(--gray-600);font-family:Inter,sans-serif;font-size:.9rem;padding:.25rem 0}.projects-section{margin:8rem 0}.projects-grid{grid-gap:4rem;display:grid;gap:4rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:4rem}.project-card{border-bottom:1px solid #e5e5e5;border-bottom:1px solid var(--gray-200);display:flex;flex-direction:column;gap:2rem;padding:2rem 0;transition:all .3s ease}.project-card:hover{transform:translateY(-5px)}.project-image{border:1px solid #e5e5e5;border:1px solid var(--gray-200);height:300px;overflow:hidden;position:relative;width:100%}.project-image img{filter:grayscale(100%) contrast(1.1);height:100%;object-fit:cover;transition:all .3s ease;width:100%}.project-card:hover .project-image img{filter:grayscale(0) contrast(1);transform:scale(1.05)}.project-info{display:flex;flex-direction:column;gap:1rem}.project-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.project-links{display:flex;gap:1rem}.project-link{border:1px solid #d4d4d4;border:1px solid var(--gray-300);color:#525252;color:var(--gray-600);font-family:Inter,sans-serif;font-size:.8rem;letter-spacing:.05em;padding:.5rem 1rem;text-decoration:none;text-transform:uppercase;transition:all .2s ease}.project-link:hover{background:#000;background:var(--black);border-color:#000;border-color:var(--black);color:#fff;color:var(--white)}.contact-section{grid-gap:6rem;display:grid;gap:6rem;grid-template-columns:1fr 1fr;margin:8rem 0}.contact-info{gap:2rem}.contact-info,.contact-method{display:flex;flex-direction:column}.contact-method{border-bottom:1px solid #e5e5e5;border-bottom:1px solid var(--gray-200);gap:.5rem;padding:1.5rem 0}.contact-method a{color:#000;color:var(--black);font-weight:500;text-decoration:none;transition:all .2s ease}.contact-method a:hover{color:#525252;color:var(--gray-600)}.floating-gif{filter:grayscale(100%) contrast(1.2);mix-blend-mode:multiply;opacity:.6;pointer-events:none;position:fixed;z-index:2}.floating-gif.gif1{animation:gentleFloat 20s ease-in-out infinite;right:5%;top:20%;width:120px}.floating-gif.gif2{animation:gentleFloat 25s ease-in-out infinite reverse;bottom:20%;left:5%;width:100px}@keyframes gentleFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(2deg)}}.film-strip{margin:4rem 0;position:relative}.film-strip:after,.film-strip:before{background:repeating-linear-gradient(90deg,#000,#000 10px,#fff 0,#fff 20px);background:repeating-linear-gradient(90deg,var(--black) 0,var(--black) 10px,var(--white) 10px,var(--white) 20px);content:"";height:20px;left:0;position:absolute;right:0}.film-strip:before{top:-20px}.film-strip:after{bottom:-20px}@media (max-width:1024px){.about-section{gap:2rem;grid-template-columns:1fr}.about-label{position:static}.contact-section{gap:3rem}.contact-section,.projects-grid{grid-template-columns:1fr}}@media (max-width:768px){.navbar{flex-direction:column;gap:1rem;padding:1rem}.nav-links-container{gap:1.5rem}.main-content{margin-top:120px}.hero-section{align-items:center;padding:2rem 1rem;text-align:center}.portfolio-container{padding:1rem}.portfolio-hero-image{height:400px}.skills-grid{gap:2rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.floating-gif{display:none}.hero-actions{justify-content:center}}@media (max-width:480px){.projects-grid{gap:2rem;grid-template-columns:1fr}.project-image{height:250px}.portfolio-hero-image{height:300px}.btn-primary,.btn-secondary{font-size:.8rem;padding:.8rem 1.5rem}}.loading{color:#737373;color:var(--gray-500);font-family:Inter,sans-serif;font-size:.9rem;height:100vh;letter-spacing:.1em;text-transform:uppercase}.error-page,.loading{align-items:center;display:flex;justify-content:center}.error-page{flex-direction:column;height:calc(100vh - 80px);padding:2rem;text-align:center}.error-page h1{color:#000;color:var(--black);font-family:Inter,sans-serif;font-size:6rem;font-weight:300;margin-bottom:1rem}.error-page p{color:#525252;color:var(--gray-600);font-family:Inter,sans-serif;font-size:1.1rem;margin-bottom:2rem}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn-primary:focus,.btn-secondary:focus,.nav-links:focus,.project-link:focus{outline:2px solid #000;outline:2px solid var(--black);outline-offset:2px}@media print{.floating-gif,.navbar{display:none}body{background:#fff;color:#000}.main-content{margin-top:0}}
/*# sourceMappingURL=main.b5d83c39.css.map*/