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}.navbar{align-items:center;box-sizing:border-box;display:flex;justify-content:space-between;padding:15px 10%;position:relative;width:100%}.nav-logo{color:var(--foreground-color);flex-shrink:0;font-size:1.2rem;font-weight:800;text-decoration:none;z-index:2}.links{align-items:center;display:flex;left:50%;position:absolute;transform:translateX(-50%);white-space:nowrap}.links a{color:var(--foreground-color);font-weight:500;margin:0 15px;text-decoration:none;transition:color .2s ease}.links a:hover{color:var(--pink-accent)}.btn{background:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;flex-shrink:0;font-size:1rem;font-weight:700;padding:12px 20px;text-decoration:none;z-index:2}@media (max-width:1100px){.navbar{flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 5%}.nav-logo{order:1}.btn{font-size:.9rem;order:2;padding:10px 18px}.links{border-top:1px solid #0000000f;display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:center;order:3;padding-top:10px;position:static;transform:none;width:100%}.links a{font-size:.85rem;margin:2px 6px}}@media (max-width:480px){.links a{font-size:.8rem;margin:2px 4px}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}:root{--primary-color:#ff6ba7;--secondary-color:#ffd57a;--border-color:#00000014;--background-color:#fffdf9;--bg-sidebar:#f1f5f9;--foreground-color:#12202b;--secondary-foreground-color:#14222a;--foreground-muted-color:#1f3d56;--primary-foreground-color:#fff;--muted-accent-foreground-color:#8a9aaf;--muted-accent-foreground-color-darker:#56606a;--muted-accent:#f2f4f6;--muted-accent-light:#f8fafc;--success-accent:#7fe3b9;--purple-accent:#7b6cff;--pink-accent:#ff6b6b;--yellow-accent:#f9f264;--font-style:"Inter",sans-serif}body{background-color:#fffdf9;background-color:var(--background-color);font-family:Inter,sans-serif;font-family:var(--font-style)}.hero-section{align-items:center;display:flex;justify-content:space-between;min-height:80vh;padding:80px 10%}.hero-title{color:var(--foreground-color);font-size:4.5rem;font-weight:800;line-height:1.1;margin:40px 0 20px}.text-gradient{color:var(--primary-color)}.hero-description{color:var(--muted-accent-foreground-color);font-size:1.25rem;font-weight:500;line-height:1.6;margin-bottom:5%;max-width:750px}.badge-yellow{background:var(--secondary-color);border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:10px 16px}.status-pills{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.pill-yellow{background:var(--secondary-color)}.pill-gray,.pill-yellow{border-radius:50px;font-size:.9rem;font-weight:600;padding:8px 15px}.pill-gray{background:var(--muted-accent);color:var(--muted-accent-foreground-color)}.btn-primary{background:var(--primary-color);border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:larger;font-weight:600;padding:14px 28px;scroll-behavior:smooth;text-decoration:none;transition:transform .2s;white-space:nowrap}.btn-primary:hover{transform:scale(1.05)}.action-row{flex-wrap:wrap}.action-row,.social-icons{align-items:center;display:flex;gap:16px}.icon-link{align-items:center;border:1px solid var(--border-color);border-radius:50%;color:var(--foreground-color);display:flex;flex-shrink:0;height:50px;justify-content:center;text-decoration:none;transition:all .2s ease;width:50px}.icon-link:hover{background-color:#0000000d;transform:translateY(-2px)}.hero-footer-tags{display:flex;flex-wrap:wrap;gap:24px;margin-top:30px}.tag-item{align-items:center;color:var(--muted-accent-foreground-color);display:flex;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.tag-item:before{border-radius:50%;content:"";display:inline-block;flex-shrink:0;height:8px;margin-right:8px;width:8px}.tag-item.purple:before{background-color:var(--purple-accent)}.tag-item.pink:before{background-color:var(--pink-accent)}.tag-item.orange:before{background-color:var(--yellow-accent)}.dot-green-pulse{background-color:var(--success-accent);border-radius:50%;display:inline-block;flex-shrink:0;height:8px;margin-right:8px;position:relative;width:8px}.dot-green-pulse:after{animation:pulse 2s infinite;background:inherit;border-radius:50%;content:"";height:100%;position:absolute;width:100%}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}.hero-image-container{align-items:center;background:conic-gradient(from 45deg,#f6efb4,#fab0d6,#cfbefc,#f7eca6);box-shadow:30px -20px 60px #fef08a66,-30px 40px 70px #f472b64d,0 0 40px #fffc;display:flex;flex-shrink:0;height:500px;justify-content:center;padding:20px;width:500px}.hero-image-container,.profile-img{border-radius:50%;position:relative}.profile-img{display:block;height:100%;object-fit:cover;width:100%;z-index:2}.hero-image-container:after{background:inherit;border-radius:50%;content:"";filter:blur(20px);inset:-10px;opacity:.5;position:absolute;z-index:1}@media (max-width:1024px){.hero-section{gap:40px;padding:60px 6%}.hero-title{font-size:3.2rem}.hero-image-container{height:360px;width:360px}}@media (max-width:768px){.hero-section{align-items:center;flex-direction:column;gap:0;min-height:0;min-height:auto;padding:36px 5% 56px;text-align:center}.hero-image-container{height:220px;margin-bottom:28px;order:-1;width:220px}.hero-content{width:100%}.badge-yellow{font-size:.75rem;line-height:1.4;padding:8px 14px}.hero-title{font-size:2.2rem;margin:20px 0 14px}.hero-description{font-size:.95rem;margin-bottom:28px}.status-pills{justify-content:center}.pill-gray{font-size:.78rem;text-align:center}.action-row{justify-content:center}.btn-primary{font-size:1rem;padding:12px 24px}.hero-footer-tags{gap:12px;justify-content:center;margin-top:24px}.tag-item{font-size:.68rem}}.about-section{padding:100px 10%}.about-container{align-items:start;display:flex;flex-direction:column;gap:60px}.about-header{align-items:center;display:flex;font-size:1.6rem;gap:15px;margin-bottom:30px}.yellow-circle{flex-shrink:0;height:35px;width:35px}.bio-pill{align-items:center;background-color:var(--muted-accent);border-radius:50px;color:#1e293b;display:inline-flex;font-size:.9rem;font-weight:500;padding:12px 25px}.dot-pink{background-color:var(--pink-accent);border-radius:50%;flex-shrink:0;height:8px;margin-right:10px;width:8px}.intro-line{font-size:larger;font-weight:600;margin-top:40px}.bio-text p{color:var(--muted-accent-foreground-color);font-size:1.15rem;line-height:1.7;margin-top:25px}.interest-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.interest-tags span{border-radius:50px;font-size:.85rem;font-weight:600;padding:8px 18px}.tag-yellow{background:var(--secondary-color)}.tag-purple{background:var(--purple-accent);color:#fff}.tag-gray{background:var(--muted-accent);color:var(--muted-accent-foreground-color)}.about-right{display:flex;flex-direction:column;gap:20px}.currently-card,.fun-fact-card,.stats-card{border-radius:24px;padding:20px 30px}.stats-card{background-color:var(--muted-accent);display:flex;gap:16px;justify-content:space-between}.stat-item label{color:var(--muted-accent-foreground-color);display:block;font-size:1rem;font-weight:800;margin-bottom:10px}.stat-value{font-size:2.2rem;font-weight:800}.stat-value.pink{color:var(--pink-accent)}.stat-value.yellow{color:var(--secondary-color)}.stat-value.green{color:var(--success-accent)}.currently-card{background-color:#fff;border:1px solid var(--muted-accent);box-shadow:0 10px 30px #00000005;padding:20px}.card-label{font-weight:700}.currently-card h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin:15px 0}.currently-card p{color:var(--muted-accent-foreground-color);font-size:1rem;font-weight:500}.fun-fact-card{grid-gap:60px;align-items:center;background-color:var(--secondary-foreground-color);color:#fff;display:grid;gap:60px;grid-template-columns:1.1fr .5fr}.fun-fact-card label{color:#94a3b8;font-size:1.15rem;font-weight:800}.fun-fact-card p{margin-top:8px}.fact-pill{background-color:var(--foreground-muted-color);border-radius:50px;color:#fff;font-size:.95rem;font-weight:600;padding:10px 14px}.pillars-container{display:flex;flex-direction:column;gap:12px}.pillar-item{background:var(--muted-accent);border:2px solid #0000;border-radius:16px;overflow:hidden;transition:all .3s ease}.pillar-item.active{background:#fff;border-color:var(--border-color)}.pillar-header{align-items:center;background:none;border:none;color:var(--foreground-color);cursor:pointer;display:flex;font-size:.7rem;font-weight:800;justify-content:space-between;letter-spacing:.05em;padding:10px 15px 7px 25px;text-transform:uppercase;width:100%}.pillar-subtitle{color:#0f172a;color:var(--foreground-color,#0f172a);font-size:1.05rem;font-weight:700;line-height:1.4;margin:0 0 7px}.chevron{transition:transform .3s ease}.pillar-item.active .chevron{transform:rotate(180deg)}.pillar-content{max-height:0;overflow:hidden;padding:0 24px;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .3s ease}.pillar-item.active .pillar-header{color:var(--muted-accent-foreground-color)}.pillar-item.active .pillar-content{min-height:350px;overflow-y:auto;padding-bottom:24px}.pillar-content p{color:var(--muted-accent-foreground-color);font-size:.9rem;line-height:1.6;margin:0;white-space:pre-line}.about-tabs-container{display:flex;flex-direction:column;margin-top:10px}.about-tabs-header{-webkit-overflow-scrolling:touch;align-items:flex-end;border-bottom:2px solid #f1f5f9;border-bottom:2px solid var(--muted-accent,#f1f5f9);display:flex;flex-direction:row;gap:16px;justify-content:center;margin-bottom:12px;overflow-x:auto;padding-bottom:0;scrollbar-width:none;width:100%}.about-tab-btn{background:#0000;border:none;color:#94a3b8;color:var(--foreground-muted-color,#94a3b8);cursor:pointer;display:inline-block;flex:1 1;font-size:.8rem;font-weight:800;letter-spacing:.05em;min-width:80px;padding-bottom:12px;position:relative;text-align:center;text-transform:uppercase;transition:color .2s ease;white-space:nowrap}.about-tab-btn.active,.about-tab-btn:hover{color:#0f172a;color:var(--foreground-color,#0f172a)}.about-tab-btn:after{background-color:#ff5c5c;background-color:var(--accent-color,#ff5c5c);border-radius:3px 3px 0 0;bottom:-2px;content:"";height:3px;left:0;position:absolute;transform:scaleX(0);transform-origin:left center;transition:transform .3s cubic-bezier(.4,0,.2,1);width:100%}.about-tab-btn.active:after{transform:scaleX(1)}.tab-content-panel{background:#fff;border:2px solid #e2e8f0;border:2px solid var(--border-color,#e2e8f0);border-radius:10px;min-height:510px;overflow:hidden;padding:24px}.tab-subtitle{color:#0f172a;color:var(--foreground-color,#0f172a);font-size:1.05rem;font-weight:700;line-height:1.4;margin:0 0 12px}.tab-body p{color:#475569;color:var(--muted-accent-foreground-color-darker,#475569);font-size:.95rem;line-height:1.65;margin:0;white-space:pre-line}.tab-body .pillar-list{counter-reset:toolkit-counter;display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding-left:0}.tab-body .pillar-list li{color:#475569;color:var(--muted-accent-foreground-color-darker,#475569);counter-increment:toolkit-counter;font-size:.92rem;line-height:1.5;padding-left:36px;position:relative}.tab-body .pillar-list li:before{color:var(--muted-accent-foreground-color);content:counter(toolkit-counter,decimal-leading-zero);font-size:.8rem;font-weight:800;left:0;letter-spacing:.05em;position:absolute;top:0}.tab-body .pillar-list li b,.tab-body .pillar-list li strong{color:#0f172a;color:var(--foreground-color,#0f172a);display:block;font-weight:700;margin-bottom:4px}.tab-pane{animation:tabSlideIn .35s cubic-bezier(.16,1,.3,1) forwards;position:relative}@keyframes tabSlideIn{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}.about-grid-top{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1.2fr .9fr;margin-bottom:3rem;width:100%}.about-skills-row{grid-gap:50px;display:grid;gap:50px;grid-template-columns:1.2fr .9fr;width:100%}.tech-stack-card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;box-sizing:border-box;padding:32px}.card-header-with-icon{align-items:center;display:flex;gap:10px;margin-bottom:28px}.header-icon-box{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;display:flex;height:28px;justify-content:center;width:28px}.stack-groups{gap:20px}.stack-group,.stack-groups{display:flex;flex-direction:column}.group-title{align-items:center;color:#0f172a;display:flex;font-size:.95rem;font-weight:600;gap:8px;letter-spacing:-.01em;margin:0 0 14px}.group-emoji{font-size:1.05rem}.stack-tags-container{display:flex;flex-wrap:wrap;gap:8px 10px}.stack-tag-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;color:#475569;font-size:.85rem;font-weight:500;padding:6px 14px}.stack-tag-item.tag-style-pytorch{background-color:#fff1f2;border-color:#ffe4e6;color:#f43f5e}.stack-tag-item.tag-style-python{background-color:#eff6ff;border-color:#dbeafe;color:#3b82f6}.stack-tag-item.tag-style-fastapi{background-color:#ecfdf5;border-color:#d1fae5;color:#059669}.stack-tag-item.tag-style-docker{background-color:#f0f9ff;border-color:#e0f2fe;color:#0284c7}.stack-tag-item.tag-style-react{background-color:#f5f3ff;border-color:#ede9fe;color:#7c3aed}.stack-tag-item.tag-style-typescript{background-color:#f0fdfa;border-color:#ccfbf1;color:#0d9488}.stack-divider{border:0;border-top:1px solid #f1f5f9;margin-top:20px;width:100%}.spider-chart-card{background:var(--muted-accent-light);border:1px solid var(--border-color);border-radius:24px;box-sizing:border-box;display:flex;flex-direction:column;padding:32px}.library-radar-wrapper{height:340px;margin:auto 0;width:100%}.recharts-polygon{transition:all .3s ease}@media (max-width:1100px){.about-grid-top,.about-skills-row{grid-template-columns:1fr}.about-skills-row{gap:32px}}@media (max-width:768px){.about-section{padding:60px 5%}.about-container{gap:32px}.about-grid-top{margin-bottom:2rem}.about-grid-top,.about-skills-row{gap:24px;grid-template-columns:1fr}.stats-card{flex-direction:row;gap:10px;justify-content:space-between;padding:16px 20px}.stat-item label{font-size:.7rem;letter-spacing:.02em;margin-bottom:4px}.stat-value{font-size:1.6rem}.fun-fact-card{gap:20px;grid-template-columns:1fr;padding:24px}.about-tab-btn{flex:0 0 auto;font-size:.72rem;letter-spacing:.02em;padding-bottom:10px;white-space:nowrap}.tab-content-panel{padding:16px}.pillar-item.active .pillar-content,.tab-content-panel{min-height:0;min-height:auto}.interest-tags{gap:8px}.bio-pill{font-size:.82rem;padding:10px 16px}.bio-text p{font-size:1rem}.spider-chart-card,.tech-stack-card{padding:20px}.library-radar-wrapper{height:260px}}.writings-section{background-color:var(--writings-bg);overflow:hidden;padding:80px 10%}.yellow-dot{background-color:var(--secondary-color);border-radius:50%;flex-shrink:0;height:35px;width:35px}.section-header{align-items:center;display:flex;gap:15px;margin-bottom:40px}.section-header h2{color:var(--foreground-color);font-size:2.5rem;font-weight:700}.main-content-wrapper{align-items:flex-start;display:flex;gap:40px;margin-top:40px}.vertical-tabs{border-right:4px solid var(--muted-accent);display:flex;flex-direction:column;flex-shrink:0;margin-left:10px;padding-right:20px;position:relative;width:100px}.tab-btn{background:none;border:none;color:var(--muted-accent-foreground-color);cursor:pointer;font-size:1.2rem;font-weight:700;letter-spacing:.1em;padding:20px 0;text-transform:uppercase;transition:all .3s ease;writing-mode:vertical-rl}.tab-btn.active,.tab-btn:hover{color:var(--foreground-color)}.tab-indicator{background:var(--pink-accent);border-radius:99px;height:50%;position:absolute;right:-2px;top:0;transition:transform .4s cubic-bezier(.23,1,.32,1);width:5px}.carousel-container{min-width:0;position:relative;width:100%}.carousel-wrapper{position:relative}.carousel-wrapper,.nav-arrow{align-items:center;display:flex}.nav-arrow{background:#fff;border:1px solid var(--muted-accent);border-radius:50%;box-shadow:0 10px 20px #0000000d;color:var(--foreground-color);cursor:pointer;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10}.nav-arrow:hover{background:var(--pink-accent);color:#fff;transform:translateY(-50%) scale(1.1)}.nav-arrow.left{left:20px}.nav-arrow.right{right:20px}.nav-arrow.hidden{opacity:0;pointer-events:none}.articles-grid{display:flex;gap:40px;overflow-x:auto;padding:10px calc(100vw - 650px) 40px 60px;scroll-snap-stop:always;scroll-snap-type:x mandatory;scrollbar-width:none}.articles-grid::-webkit-scrollbar{display:none}.article-wrapper{flex:0 0 650px;scroll-snap-align:center;scroll-snap-stop:always;transition:all .6s cubic-bezier(.16,1,.3,1)}.article-card{background:var(--muted-accent);border-radius:32px;display:flex;flex-direction:column;justify-content:space-between;min-height:380px;min-width:0;padding:25px 45px}.article-card:hover{background-color:#fff;border-color:var(--muted-accent);box-shadow:0 20px 40px #0000000d;transform:translateY(-8px)}.article-card h3{color:var(--foreground-color);font-size:2.4rem;font-weight:800;line-height:1.1;margin-bottom:15px}.article-card p{color:var(--muted-accent-foreground-color);flex-grow:1;font-size:1rem;font-weight:600;line-height:1.5;margin-bottom:25px}.article-wrapper.dimmed{filter:blur(1px);opacity:.4;transform:scale(.9)}.article-date{color:var(--pink-accent);font-size:.8rem;font-weight:700;letter-spacing:.05em;margin-bottom:15px}.article-category{background:#d8dfe7;border-radius:8px;color:var(--muted-accent-foreground-color);display:inline-block;font-size:.7rem;font-weight:700;margin-bottom:20px;padding:6px 12px;text-transform:uppercase}.card-top{align-items:center;width:100%}.card-footer{border-top:1px solid #00000008;padding-top:20px}.read-more{align-items:center;color:var(--foreground-color);cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;text-decoration:none;transition:gap .2s ease}.read-more:hover{gap:12px}.mini-slider-dots{display:flex;gap:10px;justify-content:center;margin-top:20px}.slider-dot{background-color:var(--muted-accent);border:none;border-radius:99px;cursor:pointer;height:8px;transition:all .3s ease;width:20px}.slider-dot.active{background-color:var(--pink-accent);transform:scale(1.2);width:45px}@media (max-width:768px){.writings-section{padding:60px 5%}.main-content-wrapper{flex-direction:column;gap:0}.vertical-tabs{-webkit-overflow-scrolling:touch;border-bottom:3px solid var(--muted-accent);border-right:none;flex-direction:row;gap:0;margin-bottom:24px;margin-left:0;overflow-x:auto;padding-bottom:0;padding-right:0;scrollbar-width:none;width:100%}.vertical-tabs::-webkit-scrollbar{display:none}.tab-btn{flex:1 1;font-size:.75rem;letter-spacing:.05em;padding:12px 16px;position:relative;text-align:center;text-orientation:mixed;white-space:nowrap;writing-mode:horizontal-tb;-webkit-writing-mode:horizontal-tb}.tab-btn.active:after{background:var(--pink-accent);border-radius:3px 3px 0 0;bottom:-3px;content:"";height:3px;left:0;position:absolute;width:100%}.tab-indicator{display:none}.articles-grid{gap:16px;padding:10px 0 32px}.article-wrapper{flex-basis:calc(100vw - 10%);flex-grow:0;flex-shrink:0;scroll-snap-align:start}.article-card{border-radius:20px;min-height:300px;padding:20px 24px}.article-card h3{font-size:1.6rem}.nav-arrow{height:40px;width:40px}.nav-arrow.left{left:4px}.nav-arrow.right{right:4px}.section-header h2{font-size:2rem}}.projects-section{padding:100px 10%}.projects-intro{color:var(--muted-accent-foreground-color);font-size:1.1rem;line-height:1.6;max-width:650px}.accordion-container{display:flex;flex-direction:row;gap:16px;height:500px;margin-top:40px;width:100%}.project-accordion-card{border:1px solid #e2e8f0;border-radius:32px;cursor:pointer;flex:1 1;height:100%;overflow:hidden;position:relative;transition:flex .7s cubic-bezier(.25,1,.3,1)}.project-accordion-card.expanded{flex:9 1}.card-background{background-position:50%;background-size:cover;height:100%;left:0;position:absolute;top:0;transition:transform .5s ease;width:100%;z-index:1}.card-overlay{background:linear-gradient(0deg,#0000008c 0,#00000026 55%,#0000);inset:0;pointer-events:none;position:absolute;z-index:2}.card-demo-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffed9;border:1px solid #e2e8f0cc;border-radius:6px;box-shadow:0 2px 4px #0000000d;color:#262a0f;font-size:.7rem;font-weight:700;left:20px;letter-spacing:.05em;opacity:0;padding:4px 10px;position:absolute;top:16px;transform:translateY(-4px);transition:opacity .3s ease,transform .3s ease;z-index:4}.project-accordion-card.expanded .card-demo-badge{opacity:1;transform:translateY(0)}.card-content{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff8c;border:1px solid #ffffff59;border-radius:20px;bottom:0;color:#0f172a;left:0;margin:20px;opacity:0;padding:24px 28px;pointer-events:none;position:absolute;transform:translateX(-16px);transition:opacity .4s ease,transform .4s ease;width:calc(100% - 40px);z-index:3}.project-accordion-card.expanded .card-content{opacity:1;pointer-events:auto;transform:translateX(0);transition-delay:.28s}.tags-container{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.project-tag{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff2e;border:1px solid #ffffff40;border-radius:99px;color:#1e293b;font-size:.72rem;font-weight:600;padding:5px 12px;text-transform:uppercase}.project-title{font-size:1.6rem;font-weight:700;line-height:1.2;margin:10px 0;white-space:normal}.project-description{color:#334155;font-size:.88rem;line-height:1.55;margin:0}.project-cta{color:#0f172a;display:inline-block;font-size:.88rem;font-weight:700;margin-top:4px}.helper-text{color:#94a3b8;font-size:.8rem;font-weight:800;letter-spacing:.15em;margin-top:30px;text-transform:uppercase}@media (max-width:1024px){.projects-section{padding:60px 5%}.accordion-container{flex-direction:column;gap:10px;height:auto;margin-top:24px}.project-accordion-card{border-radius:18px;flex:initial;height:72px;transition:height .4s cubic-bezier(.25,1,.3,1);width:100%}.project-accordion-card.expanded{display:flex;flex-direction:column;height:auto!important;min-height:0;min-height:auto}.card-collapsed-label{align-items:center;display:flex;inset:0;padding:0 20px;position:absolute;z-index:3}.project-accordion-card.expanded .card-collapsed-label{display:none}.card-collapsed-label span{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000047;border:1px solid #ffffff40;border-radius:99px;color:#fff;font-size:.9rem;font-weight:700;padding:6px 14px;text-shadow:0 1px 6px #00000080}.project-accordion-card.expanded .card-content{bottom:auto;left:auto;margin:20px;opacity:1;pointer-events:auto;position:relative!important;transform:translateY(0);transition:opacity .4s ease .1s;width:calc(100% - 32px)}.project-title{font-size:1.3rem}.project-description{font-size:.85rem}.helper-text{display:none}.project-cta{font-size:.82rem}}.after-hours-section{padding:100px 10%}.after-hours-layout{grid-gap:100px;align-items:start;display:grid;gap:100px;grid-template-columns:450px 1fr;margin-top:40px}.lifestyle-context{display:flex;flex-direction:column;gap:35px;min-width:460px}.intro{color:var(--muted-accent-foreground-color);font-size:1.1rem;font-weight:500;line-height:1.6;margin-bottom:8px}.pill-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.pill{background:#fff;border:1px solid var(--border-color);border-radius:99px;color:var(--muted-accent-foreground-color);cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 22px;transition:all .3s cubic-bezier(.4,0,.2,1)}.pill.active{background:var(--pink-accent);border-color:var(--pink-accent);box-shadow:0 4px 12px #ff6b9d33;color:#fff}.summary-stack{display:flex;flex-direction:column;gap:16px}.summary-card{background:var(--muted-accent);border:1px solid #0000;border-radius:16px;padding:24px;transition:all .4s ease}.summary-card .label{color:var(--muted-accent-foreground-color);display:block;font-size:.7rem;font-weight:800;letter-spacing:.1em;margin-bottom:8px}.summary-card h4{color:var(--foreground-color);font-size:1.15rem;font-weight:700;margin-bottom:8px}.summary-card p{color:var(--muted-accent-foreground-color);font-size:.95rem;font-weight:500;line-height:1.5}.media-gallery{display:flex;flex-direction:column;gap:20px}.gallery-label{color:#94a3b8;font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.gallery-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:start}.media-poster{aspect-ratio:2/3;border-radius:20px;box-shadow:0 15px 35px #0000001a;flex-shrink:0;overflow:hidden;transition:transform .4s ease;width:calc(25% - 15px)}.media-poster:hover{transform:translateY(-8px)}.media-poster img{height:100%;object-fit:cover;width:100%}.sketches-masonry{column-count:3;column-gap:20px;width:90%}.sketch-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;break-inside:avoid;margin-bottom:20px;overflow:hidden;page-break-inside:avoid;transition:transform .3s ease}.sketch-card:hover{transform:translateY(-5px)}.sketch-card img{display:block;height:auto;width:100%}.mobile-pill-container{display:none}.desktop-pill-container{display:block}@media (max-width:1024px){.after-hours-layout{gap:48px;grid-template-columns:1fr}.lifestyle-context{min-width:0;min-width:auto}.desktop-pill-container{display:none}.mobile-pill-container{display:block;margin-bottom:10px}.media-poster{width:calc(33.33% - 14px)}}@media (max-width:768px){.after-hours-section{padding:60px 5%}.after-hours-layout{gap:36px;grid-template-columns:1fr}.sketches-masonry{column-count:2;width:100%}.media-poster{width:calc(50% - 10px)}.pill-row{gap:8px}}@media (max-width:480px){.media-poster{width:calc(50% - 10px)}.sketches-masonry{column-count:1}}.journey-section{padding:100px 10%;position:relative}.filter-row{display:flex;gap:12px;margin-bottom:60px}.stop-marker{align-items:center;background:#fff;border:4px solid var(--accent);border-radius:50%;display:flex;height:24px;justify-content:center;margin-bottom:24px;transition:transform .2s ease;width:24px}.timeline-item:hover .stop-marker{transform:scale(1.2)}.timeline-item:hover{transform:translateY(-5px)}.stop-year{font-size:.85rem;font-weight:700;text-transform:uppercase}.stop-title{color:#1e293b;font-size:1.1rem;margin:4px 0}.stop-loc{color:#94a3b8;font-size:.9rem}.story-card h5{font-size:1rem;margin-bottom:12px}.story-card p{color:#94a3b8;font-size:.9rem;line-height:1.6}.tag-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.story-tag{background:#ffffff1a;border:1px solid #ffffff1a;border-radius:99px;font-size:.75rem;font-weight:600;padding:5px 14px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.footer-hint{color:#94a3b8;font-size:.9rem;font-weight:800;letter-spacing:.1em;margin-top:20px}.timeline-wrapper{border-bottom:1px solid #f1f5f9;min-height:150px;overflow:visible;padding:0 0 20px;position:relative;transition:min-height .4s cubic-bezier(.4,0,.2,1)}.timeline-wrapper.is-expanded{min-height:650px}.timeline-inner-container{display:inline-block;min-width:100%;position:relative}.timeline-stops{align-items:flex-start;display:flex;flex-direction:row;gap:3.5rem;padding:0 2rem 2rem;position:relative;z-index:2}.timeline-line{background:#e2e8f0;height:2px;left:0;position:absolute;top:10px;width:100%;z-index:1}.timeline-item.dimmed{filter:grayscale(1);opacity:.2;pointer-events:none;transform:scale(.95)}.timeline-item{cursor:pointer;flex-shrink:0;min-width:300px;transition:transform .2s ease}.story-card.active-summary{background:#0f172a;border-radius:20px;box-shadow:0 20px 40px #00000026;color:#fff;margin-right:auto;margin-top:30px;padding:20px;position:absolute;width:410px;z-index:10}@keyframes revealStory{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.timeline-wrapper.custom-scrollbar{cursor:grab;overflow-x:auto;overflow-y:hidden;padding-bottom:30px}.timeline-wrapper.custom-scrollbar:active{cursor:grabbing}.timeline-wrapper.custom-scrollbar::-webkit-scrollbar{height:8px}.timeline-wrapper.custom-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px;margin:0 40px}.timeline-wrapper.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border:2px solid #f1f5f9;border-radius:10px;-webkit-transition:background .3s ease;transition:background .3s ease}.timeline-wrapper.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#f472b6}@media (max-width:768px){.journey-section{padding:60px 5%}.filter-row{flex-wrap:wrap;gap:8px;margin-bottom:36px}.timeline-item{min-width:220px;width:220px}.story-card.active-summary{margin-top:20px;position:relative;width:calc(100vw - 60px)}.timeline-stops{gap:2rem;padding:0 1rem 2rem}}.contact-section{margin:0 auto;padding:100px 10%}.contact-container{grid-gap:70px;display:grid;gap:70px;grid-template-columns:1.3fr 2fr;margin-top:40px}.card-label{color:var(--muted-accent-foreground-color);display:block;font-size:.9rem;font-weight:800;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.warm-hello h3{font-size:1.5rem;margin-bottom:15px}.warm-hello p{color:var(--secondary-foreground-color);font-weight:500}.info-card{border-radius:20px;margin-bottom:24px;padding:30px}.warm-hello{background-color:var(--secondary-color);color:var(--foreground-color)}.status-card{background-color:#f1f5f9}.status-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.status-grid span{background:#fff;border-radius:10px;font-size:.85rem;font-weight:600;padding:15px}.direct-line{background-color:var(--secondary-foreground-color);color:#fff}.direct-header{display:flex;justify-content:space-between}.email-link{color:#fff;display:block;font-size:1.5rem;font-weight:800;margin-bottom:15px;text-decoration:none}.response-time{color:var(--muted-accent-foreground-color);font-weight:500}.contact-form-card{background-color:#fff;border:1px solid var(--border-color);border-radius:24px;padding:40px}.contact-form-card h3{font-size:1.8rem}.form-header{align-items:center;display:flex;justify-content:space-between}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.input-group{margin-top:24px}.input-group label{color:var(--muted-accent-foreground-color);display:block;font-size:.8rem;font-weight:700;margin-bottom:8px}.input-group input,.input-group textarea{background:#fffbeb;border:none;border-radius:12px;font-family:inherit;font-size:.95rem;padding:16px;width:100%}.accent-input{background:var(--secondary-color)!important}textarea{min-height:100px;resize:vertical}.form-footer{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-top:10px;padding-top:30px}.form-footer p{max-width:90%}.send-btn{background:var(--foreground-color);border:none;border-radius:99px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;min-width:23%;padding:16px 32px;transition:transform .2s ease}.send-btn:hover{transform:scale(1.05)}.form-status-overlay{align-items:center;animation:overlayFadeIn .4s cubic-bezier(.16,1,.3,1);box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:450px;padding:40px 24px;text-align:center}.form-status-overlay h3{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin:18px 0 8px}.form-status-overlay p{color:#64748b;font-size:.95rem;line-height:1.5;margin-bottom:28px;max-width:340px}.status-indicator-dot.large{border-radius:50%;height:12px;width:12px}.status-indicator-dot.large.success{background-color:#16a34a;box-shadow:0 0 0 6px #16a34a26}.status-indicator-dot.large.error{background-color:#e11d48;box-shadow:0 0 0 6px #e11d4826}.reset-btn,.retry-btn{cursor:pointer;font-size:.9rem;padding:12px 24px;transition:transform .2s ease,background-color .2s ease}.retry-btn{background-color:#1e293b;font-size:large}.retry-btn:hover{background-color:#0f172a}@keyframes overlayFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (max-width:1024px){.contact-container{gap:40px;grid-template-columns:1fr}}@media (max-width:768px){.contact-section{padding:60px 5%}.contact-container{gap:32px;grid-template-columns:1fr}.contact-form-card{padding:24px 20px}.form-row{gap:0;grid-template-columns:1fr}.form-footer{align-items:flex-start;flex-direction:column;gap:20px}.send-btn{min-width:0;min-width:auto;width:100%}.status-grid{grid-template-columns:1fr}.email-link{font-size:1.2rem}}.scroll-to-top{bottom:40px;opacity:0;position:fixed;right:40px;transform:translateY(20px);transition:all .4s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:100}.scroll-to-top.visible{opacity:1;transform:translateY(0);visibility:visible}.scroll-to-top button{align-items:center;background-color:var(--secondary-color);border:2px solid var(--border-color);border-radius:50%;box-shadow:2px 2px 0 var(--muted-accent-foreground-color);color:var(--muted-accent-foreground-color);cursor:pointer;display:flex;height:56px;justify-content:center;transition:all .2s ease;width:56px}.scroll-to-top button:hover{background-color:#f7cd45;box-shadow:6px 6px 0 var(--muted-accent-foreground-color);transform:translate(-2px,-2px)}.scroll-to-top button:active{box-shadow:0 0 0 var(--muted-accent-foreground-color);transform:translate(2px,2px)}.vertical-indicator-nav{align-items:flex-end;display:flex;flex-direction:column;gap:16px;position:fixed;right:30px;top:50%;transform:translateY(-50%);z-index:1000}.nav-indicator{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:flex-end;padding:0;position:relative}.nav-indicator:after{background-color:var(--muted-accent-foreground-color);border-radius:99px;content:"";height:10px;opacity:.6;transition:all .4s cubic-bezier(.175,.885,.32,1.275);width:10px}.nav-indicator.active:after{background-color:var(--pink-accent);box-shadow:0 0 10px #ff6b6b33;height:30px;opacity:1}.nav-section-label{color:var(--muted-accent-foreground-color);font-size:.7rem;font-weight:800;letter-spacing:.05em;margin-right:14px;opacity:0;pointer-events:none;text-transform:uppercase;transform:translateX(8px);transition:all .3s ease}.nav-indicator:hover .nav-section-label{opacity:1;transform:translateX(0)}.nav-indicator.active .nav-section-label,.nav-indicator.active:hover .nav-section-label{color:var(--pink-accent)}@media (max-width:768px){.vertical-indicator-nav{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffe6;border:1px solid #fff9;border-radius:99px;bottom:20px;box-shadow:0 10px 30px #0000001f;display:flex;flex-direction:row;gap:14px;justify-content:center;left:50%;max-width:95vw;overflow:visible;padding:10px 18px;position:fixed;right:auto;top:auto;transform:translateX(-50%);width:-webkit-max-content;width:max-content;z-index:1000}.nav-indicator{flex-shrink:0;justify-content:center;padding:6px 2px;position:relative}.nav-indicator:after{background-color:var(--muted-accent-foreground-color);border-radius:99px;content:"";height:8px;opacity:.6;transition:all .3s cubic-bezier(.175,.885,.32,1.275);width:8px}.nav-indicator.active:after{background-color:var(--pink-accent)!important;border-radius:99px!important;box-shadow:0 0 10px #ff6b9d4d!important;height:8px!important;opacity:1!important;width:24px!important}.nav-section-label{bottom:100%;color:var(--pink-accent);font-size:.7rem;font-weight:800;left:50%;letter-spacing:.05em;margin-right:0;opacity:0;pointer-events:none;position:absolute;text-transform:uppercase;transform:translate(-50%,6px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}.nav-indicator:focus .nav-section-label,.nav-indicator:hover .nav-section-label{opacity:1;transform:translate(-50%,-4px)}}.vertical-indicator-nav .nav-indicator .nav-section-label{opacity:0;transition:opacity .2s ease,visibility .2s ease;visibility:hidden}.vertical-indicator-nav .nav-indicator.show-label .nav-section-label{opacity:1;visibility:visible}.model-loader-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffd9;height:100%;left:0;position:absolute;text-align:center;top:0;z-index:10}.model-loader-content,.model-loader-overlay{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.model-loader-content{box-sizing:border-box;padding:0 20px}.progress-bar-track{background:#e2e8f0;border-radius:4px;height:8px;margin-top:12px;overflow:hidden;width:80%}.progress-bar-fill{background:linear-gradient(135deg,#f36,#ff6b8b);height:100%}.spinner-ring{animation:spin linear infinite;border:3px solid #f363;border-radius:50%;border-top-color:#f36;height:40px;width:40px}.loader-text{color:#1e293b;font-family:monospace;font-size:.9rem;margin:8px 0 0}.progress-percentage{color:#f36;font-size:.85rem;font-weight:700;margin-top:6px}.dashboard-wrapper{grid-gap:20px;background-color:var(--muted-accent-light);display:grid;font-family:Inter,sans-serif;gap:20px;grid-template-columns:320px 1fr;padding:20px}.sidebar{background:#fff;border:1px solid var(--muted-accent);border-radius:12px;display:flex;flex-direction:column;gap:30px;padding:24px}.group-label{color:var(--muted-accent-foreground-color);display:block;font-size:.75rem;font-weight:800;letter-spacing:.05em;margin-bottom:12px}.upload-box{background:#fffdf9;border:1px dashed #e2e8f0;border-radius:12px;padding:20px;text-align:center}.upload-box p{margin-top:10px}.upload-icon{background:#fef3c7;border-radius:8px;height:40px;line-height:40px;margin:0 auto 20px;width:40px}.mode-option{border:1px solid var(--muted-accent);border-radius:10px;margin-bottom:10px;padding:16px}.mode-option.active{background:#fff1f2;border-color:var(--primary-color)}.mode-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.radio-circle{border:2px solid var(--muted-accent)}.radio-circle.active{background:radial-gradient(var(--primary-color) 40%,#0000 50%);border-color:var(--primary-color)}.main-viewer{display:flex;flex-direction:column;gap:20px}.viewer-header{align-items:flex-start;display:flex;justify-content:space-between}.viewer-header p{margin-top:10px}.status-badge{background:#fff;border:1px solid var(--muted-accent);border-radius:20px;font-size:.8rem;font-weight:600;padding:6px 14px}.status-badge .dot{background:#10b981;border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.tab-nav{display:flex;gap:10px}.tab{background:#fff;border:1px solid var(--muted-accent);border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px}.tab.active{background:#fff1f2;border-color:var(--primary-color);color:var(--primary-color)}.grid-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr;grid-template-rows:auto auto}.detection-main-card,.mini-card,.saliency-card{background:#fff;border:1px solid var(--muted-accent);border-radius:12px;padding:16px}.card-header-row{display:flex;justify-content:space-between;margin-bottom:12px}.card-header-row label{font-size:.9rem;font-weight:700}.card-header-row span{color:var(--muted-accent-foreground-color);font-size:.75rem}.image-container{border-radius:8px;overflow:hidden;position:relative}.bounding-box{background:#ff5c931a;border:2px solid var(--primary-color);position:absolute}.box-label{background:var(--primary-color);color:#fff;font-size:.7rem;left:-2px;padding:2px 6px;position:absolute;top:-24px;white-space:nowrap}.metadata-column{display:flex;flex-direction:column;gap:12px}.mini-card label{display:block;font-size:.65rem;font-weight:800;margin-bottom:4px}.mini-card label,.mini-card p{color:var(--muted-accent-foreground-color)}.mini-card p{font-size:1rem;font-weight:700;margin:0}.inspector-log{background:#0f172a;border-radius:12px;color:#94a3b8;font-family:JetBrains Mono,monospace;font-size:.85rem;padding:20px}.log-header{color:#475569;margin-bottom:12px}.green{color:#4ade80}.btn-run{background:var(--primary-color);color:#fff;margin-top:30px}.btn-run,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-weight:700;padding:12px;width:100%}.btn-secondary{background:#f1f5f9;color:var(--muted-accent-foreground-color);margin-top:8px}.pink-slider{-webkit-appearance:none;appearance:none;background:#e2e8f0;border-radius:5px;height:6px;width:100%}.pink-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid var(--primary-color);border-radius:50%;cursor:pointer;height:18px;width:18px}.image-container.global:after{background:radial-gradient(circle at 40% 50%,#ff5c9366 0,#0000 70%);content:"";pointer-events:none}.grid-overlay-viewer,.image-container.global:after{height:100%;left:0;position:absolute;top:0;width:100%}.grid-overlay-viewer{background-image:linear-gradient(90deg,#e2e8f080 1px,#0000 0),linear-gradient(180deg,#e2e8f080 1px,#0000 0);background-size:40px 40px}.image-container.tiled:after{background:#ff5c934d;box-shadow:40px 40px #ff5c9333,80px 0 #ff5c9366;content:"";height:40px;left:80px;position:absolute;top:40px;width:40px}.threshold-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.empty-state-container{align-items:center;background-color:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;display:flex;justify-content:center;margin-top:10px;min-height:400px;width:100%}.empty-state-content p{color:#94a3b8;font-size:1.1rem;font-weight:500;text-align:center}.image-container img{border-radius:4px;display:block;height:auto;object-fit:cover;width:100%}.loader-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffc;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.scanner-widget{background:#fff;border:3px solid #1a1a1a;box-shadow:6px 6px 0 #ff4d94;height:60px;margin-bottom:15px;overflow:hidden;position:relative;width:60px}.scanner-line{animation:scanMove 1.5s ease-in-out infinite;background:var(--secondary-color);box-shadow:0 0 8px var(--secondary-color);height:4px;left:0;position:absolute;top:0;width:100%}.scanner-box{background:repeating-linear-gradient(45deg,#0000,#0000 5px,#ccd42d1a 0,#d4aa2d1a 10px);height:100%;width:100%}.loader-text{color:#1a1a1a;font-family:Courier New,Courier,monospace;font-size:.8rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.dimmed{filter:grayscale(.5) opacity(.5);transition:all .3s ease}@keyframes scanMove{0%{top:0}50%{top:90%}to{top:0}}.analysis-flow-container{margin-top:15px;max-width:100%;width:100%}.gemini-analysis-card{animation:fadeIn .4s ease-out}.samples-grid{margin-top:12px}.sample-item-btn{height:58px}.sample-item-btn:disabled{opacity:.6}@media (max-width:768px){.dashboard-wrapper{gap:24px;grid-template-columns:1fr;padding:16px}.sidebar{gap:20px;margin-bottom:10px}.btn-run{margin-bottom:50px;margin-top:10px}.tab-nav>button.tab{font-size:.74rem}.viewer-header{display:flex;flex-direction:column}.status-badge{font-size:.9rem;margin-top:10px}}:root{--bg-color:#fdfbf7;--card-bg:#fff;--accent-pink:#ff5c93;--text-main:#333a4d;--text-muted:#8c92a3;--border-color:#f0f0f0}.card-container{background-color:#fff;background-color:var(--card-bg);border:1px solid #f0f0f0;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 20px #0000000d;font-family:Inter,sans-serif;padding:24px}.header-left-section{flex:1 1;justify-content:space-between;margin-right:20px}.card-header,.header-left-section{align-items:flex-start;display:flex}.card-header{font-size:.8rem;margin-bottom:20px}.generate-btn{background-color:#ff5c93;background-color:var(--accent-pink);border:none;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-weight:600;padding:12px 20px;transition:opacity .2s;width:280px}.session-tag{align-items:center;background:#f4f6f9;border-radius:20px;color:#8c92a3;display:flex;font-size:.75rem;font-weight:600;gap:6px;margin-top:5px;padding:6px 14px;white-space:nowrap}.card-body{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 280px}.image-preview{aspect-ratio:16/10;background:#eee;border-radius:12px;overflow:hidden;position:relative}.image-preview img{height:100%;object-fit:cover;width:100%}.floating-tags{bottom:15px;display:flex;gap:10px;left:15px;position:absolute}.tag{background:#ffffffe6;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#333a4d;color:var(--text-main);font-size:.75rem;font-weight:500;padding:6px 14px}.controls-sidebar{display:flex;flex-direction:column;gap:12px}.control-item{border:1px solid #f0f0f0;border:1px solid var(--border-color);border-radius:10px;padding:12px 16px}.control-item label{color:#b0b5c1;display:block;font-size:.65rem;font-weight:800;letter-spacing:.05em;margin-bottom:4px}.control-item .value{color:#333a4d;color:var(--text-main);font-size:1rem;font-weight:700}.mono{font-family:Courier New,monospace;font-size:.9rem!important}.latent-container{grid-gap:32px;background:#fff;border-radius:16px;display:grid;font-family:Inter,-apple-system,sans-serif;gap:32px;grid-template-columns:1fr 500px;padding:32px}.map-section{display:flex;flex-direction:column;gap:24px}.map-header{align-items:flex-start;display:flex;justify-content:space-between}.map-header h3{color:#1a1d23;font-size:1.25rem;margin:0}.map-header p{color:#64748b;font-size:.9rem;margin-top:6px}.badge-interactive{background:#fff1f2;border-radius:20px;color:#be185d;font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:6px 12px;text-transform:uppercase}.grid-canvas{aspect-ratio:1/1;background-color:#fdfafb;background-image:linear-gradient(#f1e7ed 1px,#0000 0),linear-gradient(90deg,#f1e7ed 1px,#0000 0);background-size:5% 5%;border:1px solid #f1e7ed;border-radius:12px;cursor:crosshair;overflow:hidden;position:relative;width:100%}.axis-label{background:#fff;border:1px solid #f1f5f9;border-radius:4px;color:#94a3b8;font-size:.7rem;font-weight:700;padding:4px 8px;position:absolute;z-index:5}.y-axis{left:12px;top:12px}.x-axis{bottom:12px;right:12px}.pointer{align-items:center;display:flex;gap:10px;pointer-events:none;position:absolute;transform:translate(-6px,-6px)}.pointer-dot{background:#ff5c93;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 4px #ff5c9333;height:12px;width:12px}.pointer-label{background:#1a1d23;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;font-size:.8rem;font-weight:600;padding:6px 12px;white-space:nowrap}.sliders-container{gap:20px}.slider-group,.sliders-container{display:flex;flex-direction:column}.slider-group{gap:10px}.slider-info{color:#334155;display:flex;font-size:.85rem;font-weight:700;justify-content:space-between}.slider{-webkit-appearance:none;appearance:none;border-radius:10px;height:8px;outline:none;width:100%}.slider.pink{background:linear-gradient(90deg,#ff5c93 var(--progress),#f1f5f9 var(--progress))}.slider.purple{background:linear-gradient(90deg,#818cf8 var(--progress),#f1f5f9 var(--progress))}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #334155;border-radius:50%;cursor:pointer;height:20px;width:20px}.map-sidebar{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;display:flex;flex-direction:column;gap:24px;padding:24px}.sidebar-group label{color:#94a3b8;display:block;font-size:.7rem;font-weight:800;letter-spacing:.05em;margin-bottom:12px}.action-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;cursor:pointer;font-size:.9rem;font-weight:600;margin-bottom:12px;padding:12px;transition:all .2s;width:100%}.action-btn:hover{background:#fdfdfd;border-color:#cbd5e1}.strip-container{border-top:1px dashed #e2e8f0;margin-top:12px;padding-top:24px}.strip-header h3{color:#1e293b;font-size:.95rem;margin:0}.frame-count{color:#94a3b8;font-size:.75rem}.frames-row{align-items:center;display:flex;flex-direction:column;gap:16px;margin-top:20px;max-height:400px;overflow-y:auto;padding-right:8px}.frames-row::-webkit-scrollbar{width:4px}.frames-row::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.frame-card{align-items:center;cursor:pointer;display:flex;flex-direction:column;width:100%}.frame-image{aspect-ratio:16/10;background:#eee;border:2px solid #0000;border-radius:8px;overflow:hidden;transition:border-color .2s;width:100%}.frame-card.active .frame-image{border-color:#ff5c93}.frame-image img{height:100%;object-fit:cover;width:100%}.frame-info{font-size:.75rem;margin-top:8px}.frame-id{color:#6366f1;font-weight:700;margin-right:4px}.frame-label{color:#64748b}.image-preview-container{align-items:center;background:#e5e7eb;display:flex;height:400px;justify-content:center;overflow:hidden;position:relative;width:100%}.gan-output-img{height:100%;object-fit:contain;transition:filter .3s ease;width:100%}.neobrutalist-loader{align-items:center;background:#fff;display:flex;flex-direction:column;font-weight:400;gap:12px;padding:1.5rem;position:absolute;text-transform:uppercase;z-index:20}.spinner{animation:spin .8s linear infinite;border-radius:50%;border-top:3px solid #f472b6;height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.loading-blur{filter:blur(4px) grayscale(50%)}.status-ready{color:#10b981}.empty-state{color:#6b7280;flex-direction:column;font-style:italic;width:100%}@media (max-width:768px){.card-header{flex-direction:column;gap:16px}.header-left-section{align-items:flex-start;flex-direction:column;gap:8px;margin-right:0;width:100%}.generate-btn{width:100%}.card-body{gap:16px;grid-template-columns:1fr}.latent-container{gap:24px;grid-template-columns:1fr;padding:16px}.image-preview-container{height:280px}}.intro-text{color:var(--muted-accent-foreground-color);font-size:1.1rem;font-weight:500;margin-bottom:30px}.content-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 20px #0000000d;display:grid;grid-template-columns:400px 1fr;overflow:hidden}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-color);padding:35px}.label-tiny{color:var(--muted-accent-foreground-color);display:block;font-size:1rem!important;font-weight:700;letter-spacing:.05em;margin-bottom:20px!important}.input-group{margin-bottom:40px}.option-box{background:#fff;border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;margin-bottom:10px;padding:20px}.option-box.active{background:#fff1f7;border-color:var(--primary-color)}.radio-circle{border:1px solid #cbd5e1;border-radius:50%;flex-shrink:0;height:16px;margin-bottom:10px;width:16px}.toggle-switch{background:#cbd5e1;border-radius:20px;cursor:pointer;height:20px;padding:10px 0;position:relative;transition:background .3s ease;width:80px}.toggle-switch:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:16px}.toggle-switch.active{background:var(--primary-color)}.toggle-switch.active:after{height:16px;right:2px;top:2px;transform:translateX(24px);width:16px}.empty-state{align-items:center;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:4px;color:#94a3b8;display:flex;font-weight:500;height:500px;justify-content:center;padding:20px;text-align:center}.image-mock img{background:#fff;border-radius:4px;margin-bottom:16px;margin-top:20px;max-height:500px;object-fit:contain;width:100%}.fade-in{animation:fadeIn .4s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hidden-radio{height:0;opacity:0;pointer-events:none;position:absolute;width:0}.option-box{cursor:pointer;transition:all .2s ease}.drop-zone:hover,.option-box:hover{border-color:var(--primary-color)}.drop-zone:hover{background:#fdf2f8}.radio-circle.selected{background:radial-gradient(var(--primary-color) 40%,#0000 50%);border-color:var(--primary-color)}.option-content strong{font-size:1rem}.option-content p{color:var(--muted-accent-foreground-color);font-size:.8rem;font-weight:500;margin-top:10px}.drop-zone{background:#fff;border:2px dashed var(--border-color);border-radius:8px;padding:20px;text-align:center}.upload-icon{background:var(--secondary-color);border-radius:50%;color:var(--muted-accent-foreground-color);height:42px;line-height:42px;margin:0 auto 10px;width:42px}.toggle-row{align-items:center;display:flex;justify-content:space-between}.toggle-info{color:var(--muted-accent-foreground-color);font-weight:500}.toggle-info p{max-width:97%}.btn-segment{background:var(--primary-color);border:none;border-radius:6px;color:#fff;font-size:1rem;font-weight:700;margin-bottom:12px;padding:14px;width:100%}.preview-area{padding:40px}.preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.status-badge{color:var(--success-accent);font-size:1rem}.preview-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr;margin-bottom:30px}.result-card{border:1px solid var(--border-color);border-radius:10px;padding:16px}.card-top{display:flex;font-size:1rem;justify-content:space-between;margin-bottom:12px}.terminal{background:#0f172a;border-radius:8px;color:#cbd5e1;font-family:Courier New,monospace;font-size:1rem;line-height:1.6;padding:20px}.t-line.comment{color:#64748b}.blue{color:#38bdf8}.yellow{color:#fbbf24}.green{color:#10b981}.pink{color:#f472b6}.stat{background:#f8fafc;border-radius:6px;grid-column:span 2;margin-top:10px;padding:10px}.stat label{color:#94a3b8;display:block;font-size:1rem;font-weight:800;margin-bottom:4px}.stat span{font-size:.8rem;font-weight:600}.samples-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:5px;margin-top:10px}.sample-item-btn{align-items:flex-end;border:1px solid #d0d5dd;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.68rem;font-weight:700;height:56px;line-height:1.2;padding:8px;text-align:left;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.sample-item-btn:hover{border-color:#f36;box-shadow:0 4px 12px #ff336626;transform:translateY(-1px)}.sample-item-btn:active{transform:translateY(0)}.sample-item-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.55;transform:none}@media (max-width:900px){.content-card{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--border-color);border-right:none}.preview-area,.sidebar{padding:20px}.empty-state,.image-mock img{height:350px!important;min-height:350px!important}.preview-header{margin-top:20%}}@media (max-width:768px){.preview-header{align-items:flex-start;display:flex;flex-direction:column}.status-badge{font-size:.8rem}}body,html{box-sizing:border-box;margin:0;max-width:100vw;overflow-x:hidden;padding:0}*,:after,:before{box-sizing:inherit}.portfolio-page{background-color:var(---background-color);color:var(--seondary-foreground-color);font-family:Inter,sans-serif}.hero-container{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1.5fr 1fr;margin:0 auto;padding:100px 10%}.hero-text,.hero-visual{width:100%}.hero-visual img{height:400px;object-fit:cover;width:700px}.badge-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;width:100%}.badge-tag{background:var(--secondary-color);border-radius:8px;color:var(--foreground-color);font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:5px 12px;text-transform:uppercase}.hero-heading{font-size:4rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 24px}.hero-subtext{color:var(--muted-accent-foreground-color);font-size:1.2rem;margin-bottom:40px}.hero-actions{display:flex;gap:16px}.btn-main{background-color:var(--primary-color);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:600;padding:14px 32px;text-decoration:none;transition:all .1s ease}.demo-controls>.btn-main{margin:0;width:100%}.btn-main:hover{transform:scale(1.05)}.btn-outline{background:#0000;border:1px solid var(--foreground-color);border-radius:15px;color:var(--foreground-color);cursor:pointer;font-size:1.05rem;font-weight:800;padding:14px 32px;text-decoration:none}.content-layout{grid-gap:80px;display:grid;gap:80px;grid-template-columns:250px minmax(0,1fr);margin:0 auto;padding:100px 10%}.sticky-nav{max-width:500px;position:-webkit-sticky;position:sticky;top:40px}.nav-link{color:#cbd5e1;display:block;font-size:.9rem;font-weight:800;letter-spacing:.1em;margin-bottom:24px;text-decoration:none;transition:color .3s ease}.nav-link.active{color:var(--secondary-color)}.article-body{min-width:0;width:100%}.section-title{border-left:7px solid var(--secondary-color);font-size:1.8rem;font-weight:800;margin-bottom:40px;margin-top:8%;padding-left:20px}.start>h2{margin-top:0}.feature-item{border:1px solid #e2e8f0;border-radius:16px;display:flex;gap:24px;margin-bottom:20px;padding:30px}.feature-content p{color:var(--muted-accent-foreground-color);font-weight:500;white-space:pre-line}.feature-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;height:50px;justify-content:center;width:70px}.feature-icon.red{background:#fee2e2}.feature-icon.pink{background:#fce7f3}.styled-list{list-style:none;margin:15px 0 0;padding:0}.styled-list li{color:var(--muted-accent-foreground-color);line-height:1.6;margin-bottom:12px;padding-left:24px;position:relative}.styled-list li:before{color:#db2777;content:"•";font-size:1.2rem;font-weight:700;left:0;position:absolute}.styled-list li strong{color:#111827}.dashboard-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;overflow-y:auto;padding:20px}.dashboard-container::-webkit-scrollbar{width:6px}.dashboard-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.dataset-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:20px;padding:10px}.dataset-grid img{border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;cursor:pointer;height:150px;object-fit:cover;transition:transform .3s ease,box-shadow .3s ease;width:100%}.dataset-grid img:hover{box-shadow:0 10px 15px -3px #0003;transform:scale(1.05)}.system-tabs{border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:32px;margin-bottom:20px;position:relative}.dataset-grid.grid-count-1{grid-template-columns:1fr;margin:20px auto 0;max-width:900px}.dataset-grid.grid-count-1 .snapshot-card{aspect-ratio:21/9}.dataset-grid.grid-count-2{grid-template-columns:repeat(2,1fr)}.dataset-grid.grid-count-3,.dataset-grid.grid-count-4,.dataset-grid:not([class*=grid-count-]){grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.snapshot-card{align-items:center;aspect-ratio:16/9;background-color:#f8fafc;border:1px solid var(--muted-accent);border-radius:12px;display:flex;justify-content:center;overflow:hidden;position:relative;transition:transform .2s;width:100%}.snapshot-card:hover{border-color:var(--primary-color);transform:translateY(-4px)}.snapshot-tag-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffe6;border:1px solid #e2e8f0cc;border-radius:6px;box-shadow:0 1px 3px #0000000d;color:#0f172a;font-size:.75rem;font-weight:600;left:12px;letter-spacing:.05em;padding:4px 10px;position:absolute;top:12px;z-index:10}.snapshot-img{height:100%;object-fit:cover;width:100%}.snapshot-video{height:100%;object-fit:contain;width:100%}.caption-overlay{align-items:center;background:#000000d9;color:#fff;cursor:pointer;display:flex;font-size:.8rem;height:100%;justify-content:center;left:0;opacity:0;padding:20px;position:absolute;text-align:center;top:0;transition:opacity .3s ease-in-out;width:100%;z-index:5}.snapshot-card:hover .caption-overlay{opacity:1}.caption-overlay p{color:#fff;line-height:1.4;margin:0}.timeline{box-sizing:border-box;display:flex;flex-direction:row;gap:2.5rem;overflow-x:auto;overflow-y:hidden;padding:24px 0;position:relative;width:100%}.timeline:before{background:#f1f5f9;content:"";left:0;position:absolute;right:0;top:32px;width:100%;z-index:1}.timeline-item{display:flex;flex:0 0 280px;flex-direction:column;position:relative;width:280px}.timeline-dot{background:#fff;border:4px solid var(--primary-color);border-radius:50%;height:16px;left:0;margin-bottom:16px;position:relative;top:0;width:16px;z-index:2}.timeline-item.latest .timeline-dot{box-shadow:0 0 0 4px #fce7f3}.timeline-meta{color:var(--muted-accent-foreground-color);font-family:Roboto,monospace;font-size:.9rem;margin-bottom:8px}.timeline-content h3{font-weight:800;margin:0 0 8px}.takeaway-list{display:flex;flex-direction:column;gap:20px}.takeaway-item{align-items:center;background:var(--secondary-color);border-radius:12px;color:var(--seondary-foreground-color);display:flex;gap:32px;padding:32px}.takeaway-item h3{color:var(--foreground-color);margin-bottom:10px}.takeaway-number{color:var(--foreground-color);font-size:2rem;font-style:italic;font-weight:900}.demo-container{align-items:center;background:var(--muted-accent);border:1px solid #e2e8f0;border-radius:12px;display:flex;overflow:hidden}.demo-controls{background:#f1f5f9;padding:40px}.demo-controls label{display:block;font-size:1.2rem;font-weight:800;margin-bottom:10px}.demo-controls input{border:1px solid #cbd5e1;color:var(--muted-accent-foreground-color);font-size:1.1rem;font-weight:600;margin-bottom:20px;padding:10px;width:100%}.demo-terminal{background:#0f172a;color:#94a3b8;font-family:Roboto,monospace;font-size:1.1rem;min-height:500px;padding:30px;width:80%}.terminal-header{color:#4ade80;display:flex;justify-content:space-between;margin-bottom:20px}.json-key{color:#f472b6}.json-val{color:#fbbf24}@media (max-width:1024px){.hero-container{gap:32px;grid-template-columns:1fr;padding:40px 6%;width:100%}.hero-text{max-width:100%;width:100%}.hero-visual{display:block;width:100%}.hero-container .hero-visual img{border-radius:16px;height:auto!important;max-height:none!important;max-width:100%!important;object-fit:cover;width:100%!important}.badge-row{display:flex;flex-wrap:wrap;gap:10px;width:100%}.content-layout{box-sizing:border-box;display:block;padding:30px 4%!important;width:100%}.section-title{margin-top:10%}.arch-dual-container{gap:24px;grid-template-columns:1fr!important;width:100%}.arch-card{box-sizing:border-box;width:100%}.demo-container{flex-direction:column}.demo-terminal{min-height:300px;width:100%}.takeaway-item{align-items:flex-start;box-sizing:border-box;flex-direction:column;gap:16px;padding:24px;width:100%}.takeaway-number{font-size:1.5rem}.timeline{padding-left:0;padding-right:0;width:100%}}@media (max-width:768px){.content-layout,.project-detail-container{padding:30px 4%}.hero-heading{font-size:2rem!important;word-break:break-word}.hero-subtext{font-size:1rem}.hero-actions{flex-direction:column;gap:12px}.btn-main,.btn-outline{font-size:1rem;text-align:center;width:100%}.feature-item{align-items:flex-start;flex-direction:column;gap:16px;padding:20px}.feature-icon{border-radius:10px;font-size:1.2rem;height:48px;width:48px}.feature-content h3{font-size:1.1rem;margin-bottom:6px}.feature-content p{font-size:.95rem;line-height:1.6}.dataset-grid.grid-count-2{grid-template-columns:1fr}.system-tabs{gap:18px}.snapshot-grid{grid-template-columns:1fr}}@media (max-width:1024px){.sidebar{background-color:var(---background-color);border:none;margin-bottom:-80px;position:static}.sticky-nav{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0;border-radius:99px;bottom:20px;flex-direction:row;gap:12px;left:50%;max-width:95vw;min-height:0!important;padding:8px 22px!important;position:fixed;right:auto;top:auto;transform:translateX(-50%);width:-webkit-max-content;width:max-content;z-index:1000}.sticky-nav,.sticky-nav .nav-link{align-items:center;display:flex;justify-content:center}.sticky-nav .nav-link{background:none;border:none;cursor:pointer;height:12px!important;margin:0!important;outline:none;position:relative;text-decoration:none;width:12px}.sticky-nav .nav-link:after{background-color:#cbd5e1;border-radius:99px;content:"";height:8px;position:absolute;transition:width .2s ease,background-color .2s ease;width:8px}.sticky-nav .nav-link.active:after{background-color:#f36;background-color:var(--primary-color,#f36);border-radius:99px;height:10px;width:22px}.sticky-nav .nav-link .nav-label{background:#fff;border:1px solid #e2e8f0;border-radius:4px;bottom:calc(100% + 8px);color:#f36;color:var(--primary-color,#f36);font-size:.8rem;font-weight:800;left:50%;letter-spacing:.05em;opacity:0;padding:2px 6px;pointer-events:none;position:absolute;text-transform:uppercase;transform:translateX(-50%) translateY(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;visibility:hidden;white-space:nowrap}.sticky-nav .nav-link .nav-label.show-transient{opacity:1;transform:translateX(-50%) translateY(0);visibility:visible}}@media (min-width:769px) and (max-width:1024px){.sidebar{background-color:var(---background-color);border:none;margin-bottom:-5px;position:static}.sticky-nav{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0000;border:none;border-radius:0;bottom:auto;flex-direction:column;gap:18px;left:auto;max-height:none;min-height:0!important;padding:0!important;position:fixed;right:24px;top:50%;transform:translateY(-50%);width:auto;z-index:1000}.sticky-nav,.sticky-nav .nav-link{align-items:center;display:flex;justify-content:center}.sticky-nav .nav-link{background:none;border:none;cursor:pointer;height:16px!important;margin:0!important;outline:none;position:relative;text-decoration:none;width:16px!important}.sticky-nav .nav-link:after{background-color:#cbd5e1;border-radius:99px;content:"";height:10px;position:absolute;transition:height .2s ease,background-color .2s ease;width:10px}.sticky-nav .nav-link.active:after{background-color:#f36;background-color:var(--primary-color,#f36);border-radius:99px;height:28px;width:10px}.sticky-nav .nav-link .nav-label{background:#fff;border:1px solid #e2e8f0;border-radius:4px;bottom:auto;box-shadow:0 2px 4px #0000000d;color:#f36;color:var(--primary-color,#f36);font-size:.9rem;font-weight:800;left:auto;letter-spacing:.05em;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;right:calc(100% + 14px);text-transform:uppercase;top:50%;transform:translateY(-50%) translateX(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;visibility:hidden;white-space:nowrap}.sticky-nav .nav-link .nav-label.show-transient{opacity:1;transform:translateY(-50%) translateX(0);visibility:visible}}.courses-section{color:var(--foreground-color);margin:0 auto;padding:100px 10%}.courses-header{align-items:center;display:flex;gap:12px;margin-bottom:32px}.yellow-circle{background-color:var(--secondary-color);border-radius:50%;height:20px;width:20px}.courses-header h2{font-size:2rem;font-weight:700;margin:0}.snapshot-banner{background-color:var(--secondary-color);border-radius:24px;margin-bottom:24px;padding:30px}.snapshot-labels{display:flex;gap:12px;margin-bottom:16px}.pill-label{font-size:.9rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.snapshot-banner h3{font-size:1.5rem;margin-bottom:16px;max-width:800px}.snapshot-desc{font-size:.95rem;line-height:1.6;max-width:900px}.stats-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);margin-top:24px}.stat-card{background:var(--muted-accent);border-radius:16px;display:flex;flex-direction:column;padding:24px}.stat-val{font-size:2rem;font-weight:800}.stat-label{color:var(--muted-accent-foreground-color);font-size:.85rem;font-weight:600}.course-main-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1.8fr 1fr}.course-selection-box{background:#fff;border-radius:24px;padding:32px}.filter-tabs{display:flex;gap:8px;margin-bottom:32px}.filter-tabs button{background:none;border:1px solid #e2e8f0;border-radius:8px;color:var(--muted-accent-foreground-color);cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 16px}.filter-tabs button.active{background:var(--pink-accent);border-color:var(--pink-accent);color:#fff}.list-top{align-items:center;color:var(--foreground-color);display:flex;font-size:.75rem;font-weight:700;justify-content:space-between}.course-selection-box h4{font-size:1.25rem;margin:8px 0 24px}.course-text{display:flex;flex-direction:column;flex-grow:1!important;min-width:0}.course-row{align-items:flex-start;background:#f1f5f9;border-radius:12px;box-sizing:border-box;display:flex!important;gap:16px;margin-bottom:12px;min-height:80px;padding:20px;width:100%}.course-row.dark-mode{background:var(--foreground-color);color:#fff}.course-dot{border-radius:50%;flex-shrink:0;height:10px;margin-top:6px;width:10px}.row-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:4px;width:100%}.row-header h5{flex:1 1;font-size:1rem;margin:0;padding-right:16px}.university{font-size:.75rem;font-weight:600;opacity:.7;text-align:right;text-transform:uppercase;white-space:nowrap}.course-text p{flex:1 1;font-size:.85rem;line-height:1.5;margin:5px 0 0;min-width:0;opacity:.8}.list-meta{align-items:center;display:flex;gap:12px}.nav-controls{display:flex;gap:14px}.nav-btn{align-items:center;background:#f1f5f9;border:none;border-radius:6px;cursor:pointer;display:flex;font-weight:700;height:28px;justify-content:center;transition:all .2s;width:28px}.nav-btn:hover:not(:disabled){background:var(--muted-accent)}.nav-btn:disabled{cursor:not-allowed;opacity:.3}.pagination-dots{display:flex;gap:8px;justify-content:center;margin-top:24px}.pagination-dots .dot{background:var(--muted-accent-foreground-color);border:1px solid var(--muted-accent-foreground-color);border-radius:40%;cursor:pointer;height:6px;transition:all .3s ease;width:10px}.pagination-dots .dot.active{background:var(--pink-accent);border:1px solid var(--pink-accent);border-radius:4px;width:18px}.course-list-stack{min-height:400px}.velocity-card-full{background:#fff;border-radius:24px;display:flex;flex-direction:column;height:500px;margin-top:15px;padding:11px 30px}.velocity-grid-body{flex:1 1;margin-top:28px;overflow-y:auto;padding-right:8px}.year-group-stretched{display:flex;gap:20px;margin-bottom:24px}.year-marker-bold{align-items:center;display:flex;flex-direction:column;width:40px}.year-marker-bold span{color:#1e293b;font-size:.8rem;font-weight:900;margin-bottom:6px}.connector-line{background:#f1f5f9;flex:1 1;width:2px}.year-lanes-container{display:flex;flex:1 1;flex-direction:column;gap:6px}.mosaic-grid-large{grid-gap:4px;display:grid;flex:1 1;gap:4px;grid-template-columns:repeat(12,1fr)}.mosaic-cell-heavy{aspect-ratio:1/1;background:#f8fafc;border-radius:3px;height:20px;transition:all .3s ease}.mosaic-cell-heavy.active{background:var(--cell-color);box-shadow:0 0 10px -2px var(--cell-color)}.mosaic-cell-heavy.empty{opacity:.4}.velocity-legend{border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;padding-top:20px}.legend-tag-pill{align-items:center;color:#64748b;display:flex;font-size:10px;font-weight:800;gap:8px;letter-spacing:.05em;text-transform:uppercase}.swatch{border-radius:2px;height:10px;width:10px}@media (max-width:1024px){.course-main-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.courses-section{padding:60px 5%}.course-main-grid{gap:20px;grid-template-columns:1fr}.stats-row{gap:16px;grid-template-columns:1fr 1fr}.mosaic-grid-large{grid-template-columns:repeat(8,1fr)}.velocity-card-full{height:auto;min-height:400px}.filter-tabs{flex-wrap:wrap;gap:6px}.row-header{align-items:flex-start;flex-direction:column;gap:4px}.university{text-align:left;white-space:normal}}@media (max-width:480px){.stats-row{grid-template-columns:1fr}}
/*# sourceMappingURL=main.c637e9b4.css.map*/