body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Roboto","Segoe UI","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif!important}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}#app_root{height:100%}.background-green{background-color:#3b82f6!important}.background-peach{background-color:#ffccbc!important}.background-white{background-color:#fff!important}.background-black{background-color:#000!important}.background-cool-grey{background-color:#d3e3fc!important}.background-blue{background:#1e293b!important}.background-offwhite{background-color:#f8fafc!important}.background-dark{background:#0f172a!important}.background-light{background-color:#f8fafc!important}.gradient-primary{background:#3b82f6}.gradient-dark{background:#1e293b}.glass{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2)}.glass,.glass-dark{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glass-dark{background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.1)}.glass-card{background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 16px rgba(0,0,0,.08)}.card-bg{background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06)}.card-bg-hover{transition:all .2s ease}.card-bg-hover:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.dot-pattern{background-image:radial-gradient(#e2e8f0 1px,transparent 0);background-size:24px 24px}f8{font-size:8px!important}.f10{font-size:10px!important}.f12{font-size:12px!important}.f14{font-size:14px!important}.f16{font-size:16px!important}.f18{font-size:18px!important}.f24{font-size:24px!important}.f32{font-size:32px!important}.f36{font-size:36px!important}.f48{font-size:48px!important}.f72{font-size:72px!important}.text-green,.text-primary{color:#3b82f6!important}.text-peach{color:#ffccbc!important}.text-white{color:#fff!important}.text-offwhite{color:#f8fafc!important}.text-black{color:#000!important}.text-cool-grey{color:#d3e3fc!important}.text-blue{color:#3b82f6!important}.text-light-grey{color:#94a3b8!important}.text-dark{color:#1e293b!important}.text-secondary{color:#334155!important}.text-muted{color:#64748b!important}.text-light{color:#94a3b8!important}.text-accent{color:#60a5fa!important}.margin--top{margin-top:16px!important}.margin--right{margin-right:16px!important}.margin--left{margin-left:16px!important}.margin--bottom{margin-bottom:16px!important}.margin--sides{margin-right:16px!important;margin-left:16px!important}.margin--ends{margin-top:16px!important;margin-bottom:16px!important}.margin-half--top{margin-top:8px!important}.margin-half--right{margin-right:8px!important}.margin-half--left{margin-left:8px!important}.margin-half--bottom{margin-bottom:8px!important}.margin-half--sides{margin-right:8px!important;margin-left:8px!important}.margin-half--ends{margin-top:8px!important;margin-bottom:8px!important}.margin-double--top{margin-top:32px!important}.margin-double--right{margin-right:32px!important}.margin-double--left{margin-left:32px!important}.margin-double--bottom{margin-bottom:32px!important}.margin-double--sides{margin-right:32px!important;margin-left:32px!important}.margin-double--ends{margin-top:32px!important;margin-bottom:32px!important}.margin-quarter--top{margin-top:4px!important}.margin-quarter--right{margin-right:4px!important}.margin-quarter--left{margin-left:4px!important}.margin-quarter--bottom{margin-bottom:4px!important}.margin-quarter--sides{margin-right:4px!important;margin-left:4px!important}.margin-quarter--ends{margin-top:4px!important;margin-bottom:4px!important}.margin-one-half--top{margin-top:24px!important}.margin-one-half--right{margin-right:24px!important}.margin-one-half--left{margin-left:24px!important}.margin-one-half--bottom{margin-bottom:24px!important}.margin-one-half--sides{margin-right:24px!important;margin-left:24px!important}.margin-one-half--ends{margin-top:24px!important;margin-bottom:24px!important}.no-margin--top{margin-top:0!important}.no-margin--right{margin-right:0!important}.no-margin--left{margin-left:0!important}.no-margin--bottom{margin-bottom:0!important}.no-margin--sides{margin-right:0!important;margin-left:0!important}.no-margin--ends{margin-top:0!important;margin-bottom:0!important}.padding--top{padding-top:16px!important}.padding--right{padding-right:16px!important}.padding--left{padding-left:16px!important}.padding--bottom{padding-bottom:16px!important}.padding--sides{padding-right:16px!important;padding-left:16px!important}.padding--ends{padding-top:16px!important;padding-bottom:16px!important}.padding-half--top{padding-top:8px!important}.padding-half--right{padding-right:8px!important}.padding-half--left{padding-left:8px!important}.padding-half--bottom{padding-bottom:8px!important}.padding-half--sides{padding-right:8px!important;padding-left:8px!important}.padding-half--ends{padding-top:8px!important;padding-bottom:8px!important}.padding-double--top{padding-top:32px!important}.padding-double--right{padding-right:32px!important}.padding-double--left{padding-left:32px!important}.padding-double--bottom{padding-bottom:32px!important}.padding-double--sides{padding-right:32px!important;padding-left:32px!important}.padding-double--ends{padding-top:32px!important;padding-bottom:32px!important}.padding-quarter--top{padding-top:4px!important}.padding-quarter--right{padding-right:4px!important}.padding-quarter--left{padding-left:4px!important}.padding-quarter--bottom{padding-bottom:4px!important}.padding-quarter--sides{padding-right:4px!important;padding-left:4px!important}.padding-quarter--ends{padding-top:4px!important;padding-bottom:4px!important}.padding-one-half--top{padding-top:24px!important}.padding-one-half--right{padding-right:24px!important}.padding-one-half--left{padding-left:24px!important}.padding-one-half--bottom{padding-bottom:24px!important}.padding-one-half--sides{padding-right:24px!important;padding-left:24px!important}.padding-one-half--ends{padding-top:24px!important;padding-bottom:24px!important}.no-padding--top{padding-top:0!important}.no-padding--right{padding-right:0!important}.no-padding--left{padding-left:0!important}.no-padding--bottom{padding-bottom:0!important}.no-padding--sides{padding-right:0!important;padding-left:0!important}.no-padding--ends{padding-top:0!important;padding-bottom:0!important}.center{text-align:center!important}.text-left{text-align:left!important}.italics{font-style:italic!important}.strong{font-weight:700!important}.caption{text-transform:uppercase}.display-block{display:block!important}.height-100{height:100vh!important}.height-min-100{min-height:100%!important}.width-100{width:100vw!important}.width-min-100{min-width:100%!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.on-hover-light:hover{opacity:.5}.source-code-font{font-family:"Source Code Pro",monospace}.roboto-font{font-family:"Roboto",sans-serif}.inter-font,body{font-family:"Inter",sans-serif}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary:#3b82f6;--primary-hover:#2563eb;--accent:#60a5fa;--sidebar-bg:#f8fafc;--sidebar-border:#e2e8f0;--light-bg:#fff;--card-bg:#fff;--text-primary:#1e293b;--text-secondary:#334155;--text-muted:#64748b;--text-light:#94a3b8;--border-color:#e2e8f0;--shadow-xs:0 1px 2px rgba(0,0,0,0.04);--shadow-sm:0 1px 3px rgba(0,0,0,0.06);--shadow-md:0 4px 12px rgba(0,0,0,0.06);--shadow-lg:0 8px 24px rgba(0,0,0,0.08);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--transition:all 0.2s ease}.dark-mode{--sidebar-bg:#1e293b;--sidebar-border:#334155;--light-bg:#0f172a;--card-bg:#1e293b;--text-primary:#f1f5f9;--text-secondary:#e2e8f0;--text-muted:#94a3b8;--text-light:#64748b;--border-color:#334155;--shadow-md:0 4px 12px rgba(0,0,0,0.15);--shadow-lg:0 8px 24px rgba(0,0,0,0.2)}.resume-main-content{overflow:auto;overflow-x:hidden;background:#fff;background:var(--light-bg);position:relative}.resume-main-content:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(rgba(148,163,184,.15) 1px,transparent 0);background-size:24px 24px;pointer-events:none}.dark-mode .resume-main-content:before{background-image:radial-gradient(rgba(100,116,139,.1) 1px,transparent 0)}.left-column{text-align:center;display:flex;flex-direction:column;min-height:100vh;border-right:1px solid #e2e8f0;border-right:1px solid var(--sidebar-border);position:relative}.dark-mode .left-column,.left-column{background:#f8fafc;background:var(--sidebar-bg)}.dark-mode .left-column{border-right-color:#e2e8f0;border-right-color:var(--sidebar-border)}.loading-screen{display:flex;justify-content:center;align-items:center;margin-top:48px;position:relative}.portrait-wrapper{position:relative;display:inline-block}.portrait-ring{position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#60a5fa);background:linear-gradient(135deg,var(--primary),var(--accent));z-index:-1;opacity:.9}.portrait{width:180px;height:180px;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:50%;-webkit-filter:blur(20px);filter:blur(20px);-webkit-animation:pixelate 2s forwards;animation:pixelate 2s forwards;border:4px solid #f8fafc;border:4px solid var(--sidebar-bg);box-shadow:0 4px 12px rgba(0,0,0,.06);box-shadow:var(--shadow-md)}.dark-mode .portrait{border-color:#f8fafc;border-color:var(--sidebar-bg)}@-webkit-keyframes pixelate{0%{-webkit-filter:blur(20px);filter:blur(20px)}to{-webkit-filter:blur(0);filter:blur(0)}}@keyframes pixelate{0%{-webkit-filter:blur(20px);filter:blur(20px)}to{-webkit-filter:blur(0);filter:blur(0)}}.cv-text-details{padding:28px 20px;width:100%}.cv-caption{margin-top:20px;margin-bottom:6px;font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#64748b;color:var(--text-muted)}.cv-name{font-size:24px;font-weight:700;color:#1e293b;color:var(--text-primary);margin-bottom:2px;letter-spacing:-.3px}.cv-tagline{font-size:13px;color:#3b82f6;color:var(--primary);font-weight:500;margin-top:4px}.cv-focus{font-size:14px;color:#334155;color:var(--text-secondary);line-height:1.5}.mailtolink{text-decoration:none;position:relative;color:#1e293b;color:var(--text-primary);font-size:13px;transition:all .2s ease;transition:var(--transition)}.mailtolink:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:1.5px;background:#3b82f6;background:var(--primary);transition:width .3s ease,left .3s ease}.mailtolink:hover{color:#3b82f6;color:var(--primary)}.mailtolink:hover:after{width:100%;left:0}.connect-button-container{position:relative;margin-top:28px;padding-bottom:24px}.connect-buttons{margin:0;padding:0;display:flex;justify-content:center;grid-gap:12px;gap:12px}.connect-buttons .connect-button{list-style:none}.connect-buttons .connect-button .connect-link{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#fff;background:var(--card-bg);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-sm);font-size:18px;color:#64748b;color:var(--text-muted);transition:all .2s ease;transition:var(--transition)}.connect-buttons .connect-button .connect-link:hover{color:#3b82f6;color:var(--primary);border-color:#3b82f6;border-color:var(--primary);-webkit-transform:translateY(-2px);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.06);box-shadow:var(--shadow-md)}.dark-mode .connect-buttons .connect-button .connect-link{background:hsla(0,0%,100%,.05);border-color:#e2e8f0;border-color:var(--border-color)}.dark-mode .connect-buttons .connect-button .connect-link:hover{background:rgba(59,130,246,.1);border-color:#3b82f6;border-color:var(--primary)}.dark-mode-toggle{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:8px;border-radius:var(--radius-sm);background:#fff;background:var(--card-bg);border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#64748b;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s ease;transition:var(--transition);z-index:10}.dark-mode-toggle:hover{color:#3b82f6;color:var(--primary);border-color:#3b82f6;border-color:var(--primary)}.dark-mode .dark-mode-toggle{background:hsla(0,0%,100%,.05);border-color:#e2e8f0;border-color:var(--border-color)}.resume-first-col{padding:40px 40px 20px;position:relative;z-index:1}.resume-second-col{padding:40px 40px 40px 20px;position:relative;z-index:1}.resume-caption{font-size:22px;font-weight:700;margin-bottom:20px;margin-top:36px;color:#1e293b;color:var(--text-primary);position:relative;display:inline-block;letter-spacing:-.3px}.resume-caption:first-child{margin-top:0}.resume-caption:after{content:"";position:absolute;bottom:-6px;left:0;width:32px;height:3px;background:#3b82f6;background:var(--primary);border-radius:2px}.about-content{background:#fff;background:var(--card-bg);border-radius:12px;border-radius:var(--radius-md);padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.06);box-shadow:var(--shadow-sm);line-height:1.7;color:#334155;color:var(--text-secondary);font-size:14px;border:1px solid #e2e8f0;border:1px solid var(--border-color)}.about-content p{margin-bottom:14px}.about-content p:last-child{margin-bottom:0}.about-content a{color:#3b82f6;color:var(--primary);text-decoration:none;font-weight:500;transition:all .2s ease;transition:var(--transition)}.about-content a:hover{color:#2563eb;color:var(--primary-hover);text-decoration:underline}.education-card{background:#fff;background:var(--card-bg);border-radius:12px;border-radius:var(--radius-md);padding:20px;margin-bottom:14px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);transition:all .2s ease;transition:var(--transition);border:1px solid #e2e8f0;border:1px solid var(--border-color)}.education-card:hover{box-shadow:0 1px 3px rgba(0,0,0,.06);box-shadow:var(--shadow-sm)}.education-card .degree{font-size:15px;font-weight:600;color:#1e293b;color:var(--text-primary);margin-bottom:4px}.education-card .school{font-size:13px;color:#64748b;color:var(--text-muted);margin-bottom:8px}.education-card .year-badge{display:inline-block;padding:4px 10px;background:rgba(59,130,246,.08);color:#3b82f6;color:var(--primary);font-size:11px;font-weight:600;border-radius:16px;margin-bottom:10px}.dark-mode .education-card .year-badge{background:rgba(96,165,250,.12)}.education-card .coursework{font-size:12px;color:#64748b;color:var(--text-muted);line-height:1.6}.education-card .coursework-label{font-weight:600;color:#334155;color:var(--text-secondary)}.education-card .description{font-size:12px;color:#64748b;color:var(--text-muted);line-height:1.6;margin-top:8px}.skills-section{margin-bottom:24px}.skills-category{margin-bottom:16px}.skills-category-label{font-size:13px;font-weight:600;color:#334155;color:var(--text-secondary);margin-bottom:10px;display:block}.skill-tags{display:flex;flex-wrap:wrap;grid-gap:6px;gap:6px}.skill-tag{display:inline-block;padding:5px 12px;background:rgba(59,130,246,.06);color:#3b82f6;color:var(--primary);font-size:12px;font-weight:500;border-radius:16px;transition:all .2s ease;transition:var(--transition);border:1px solid rgba(59,130,246,.12)}.dark-mode .skill-tag{background:rgba(96,165,250,.08);border-color:rgba(96,165,250,.15)}.skill-tag:hover{background:#3b82f6;background:var(--primary);color:#fff;border-color:transparent}.hobbies-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.hobby-item{display:flex;align-items:center;grid-gap:10px;gap:10px;padding:12px 14px;background:#fff;background:var(--card-bg);border-radius:8px;border-radius:var(--radius-sm);font-size:13px;color:#334155;color:var(--text-secondary);box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);transition:all .2s ease;transition:var(--transition);border:1px solid #e2e8f0;border:1px solid var(--border-color)}.hobby-item:hover{box-shadow:0 1px 3px rgba(0,0,0,.06);box-shadow:var(--shadow-sm)}.hobby-icon{font-size:16px;color:#3b82f6;color:var(--primary)}.loading-overlay{display:flex;flex-direction:column;justify-content:center;align-items:center;position:fixed;top:0;left:0;width:100%;height:100%;background:#f8fafc;z-index:9999}.dark-mode .loading-overlay{background:#0f172a}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;width:140px;height:140px;border:2px solid #e2e8f0;border:2px solid var(--border-color);border-radius:50%;padding:20px}.joystick{position:relative;width:40px;height:40px;background:#3b82f6;background:var(--primary);border-radius:50%;-webkit-animation:move 2s infinite;animation:move 2s infinite;box-shadow:0 0 20px rgba(59,130,246,.3)}.joystick:after,.joystick:before{content:"";position:absolute;width:10px;height:10px;background:#fff;border-radius:50%;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.joystick:before{width:16px;height:16px;-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite}@-webkit-keyframes move{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-transform:translateX(-12px);transform:translateX(-12px)}75%{-webkit-transform:translateX(12px);transform:translateX(12px)}}@keyframes move{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-transform:translateX(-12px);transform:translateX(-12px)}75%{-webkit-transform:translateX(12px);transform:translateX(12px)}}@-webkit-keyframes rotate{0%{-webkit-transform:translate(-50%,-50%) rotate(0deg);transform:translate(-50%,-50%) rotate(0deg)}to{-webkit-transform:translate(-50%,-50%) rotate(1turn);transform:translate(-50%,-50%) rotate(1turn)}}@keyframes rotate{0%{-webkit-transform:translate(-50%,-50%) rotate(0deg);transform:translate(-50%,-50%) rotate(0deg)}to{-webkit-transform:translate(-50%,-50%) rotate(1turn);transform:translate(-50%,-50%) rotate(1turn)}}.loading-text{color:#64748b;color:var(--text-muted);font-size:12px;margin-top:16px;text-transform:uppercase;letter-spacing:2px;font-weight:600;-webkit-animation:blinkingText 1.2s infinite;animation:blinkingText 1.2s infinite;text-align:center}@-webkit-keyframes blinkingText{0%,49%{opacity:1}60%,99%{opacity:.4}to{opacity:1}}@keyframes blinkingText{0%,49%{opacity:1}60%,99%{opacity:.4}to{opacity:1}}@media (min-width:1400px){.resume-first-col,.resume-second-col{padding:48px}.resume-second-col{padding-left:24px}}@media (max-width:1200px){.resume-first-col{padding:32px}.resume-second-col{padding:32px 32px 32px 16px}.hobbies-grid{grid-template-columns:1fr}}@media (max-width:992px){.left-column{min-height:auto;padding-bottom:24px;border-right:none;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--sidebar-border)}.portrait{width:150px;height:150px}.cv-name{font-size:22px}.resume-first-col,.resume-second-col{padding:28px 24px}.resume-caption{font-size:20px;margin-top:28px}}@media (max-width:768px){.left-column{min-height:auto;padding-bottom:28px}.portrait{width:140px;height:140px}.cv-name{font-size:22px}.cv-text-details{padding:20px 16px}.resume-first-col,.resume-second-col{padding:24px 16px}.resume-caption{font-size:20px;margin-top:28px}.about-content{padding:20px}.education-card{padding:16px}.hobbies-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.resume-first-col,.resume-second-col{padding:20px 14px}.skill-tags{grid-gap:5px;gap:5px}.skill-tag{padding:4px 10px;font-size:11px}.hobbies-grid{grid-template-columns:1fr}.hobby-item{padding:10px 12px}}.pi-logo-image{width:100%}.pi-logo-entire{margin:0 auto}.cv-copyright{margin:auto 0 12px;color:grey!important}.cv-copyright:hover{color:#fff!important}a{color:#3b82f6;color:var(--primary,#3b82f6);transition:all .2s ease}a:hover{color:#2563eb;color:var(--primary-hover,#2563eb);text-decoration:none}.timeline{line-height:1.6;list-style:none;margin:0;padding:0;width:100%}.timeline h1,.timeline h2,.timeline h3,.timeline h4,.timeline h5,.timeline h6{line-height:inherit}.timeline-item{padding-left:28px;position:relative;padding-bottom:28px}.timeline-item:last-child{padding-bottom:0}.timeline-info{margin:0 0 12px}.timeline-info span{display:inline-block;padding:5px 12px;background:rgba(59,130,246,.08);color:#3b82f6;color:var(--primary,#3b82f6);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;border-radius:14px;border:1px solid rgba(59,130,246,.12)}.dark-mode .timeline-info span{background:rgba(96,165,250,.1);color:#60a5fa;color:var(--accent,#60a5fa);border-color:rgba(96,165,250,.15)}.timeline-marker{position:absolute;top:6px;bottom:0;left:0;width:12px}.timeline-marker:before{content:"";display:block;width:10px;height:10px;position:absolute;top:0;left:1px;border-radius:50%;background:#3b82f6;background:var(--primary,#3b82f6);box-shadow:0 0 0 3px rgba(59,130,246,.15);transition:all .2s ease}.timeline-marker:after{content:"";width:2px;background:#e2e8f0;background:var(--border-color,#e2e8f0);display:block;position:absolute;top:16px;bottom:0;left:5px;border-radius:1px}.dark-mode .timeline-marker:after{background:#334155;background:var(--border-color,#334155)}.timeline-item:last-child .timeline-marker:after{content:none}.timeline-item:not(.period):hover .timeline-marker:before{-webkit-transform:scale(1.2);transform:scale(1.2);box-shadow:0 0 0 4px rgba(59,130,246,.2)}.timeline-content{background:#fff;background:var(--card-bg,#fff);border-radius:12px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:all .2s ease;border:1px solid #e2e8f0;border:1px solid var(--border-color,#e2e8f0)}.dark-mode .timeline-content{background:#1e293b;background:var(--card-bg,#1e293b);border-color:#334155;border-color:var(--border-color,#334155)}.timeline-content:hover{box-shadow:0 4px 12px rgba(0,0,0,.08)}.dark-mode .timeline-content:hover{box-shadow:0 4px 12px rgba(0,0,0,.15)}.timeline-content p{margin-bottom:10px;color:#64748b;color:var(--text-muted,#64748b);font-size:13px;line-height:1.65}.timeline-content p:last-child{margin-bottom:0}.timeline-title{font-size:15px;font-weight:600;color:#1e293b;color:var(--text-primary,#1e293b);margin:16px 0 10px;line-height:1.4}.dark-mode .timeline-title{color:#f1f5f9;color:var(--text-primary,#f1f5f9)}.tech-tags-container{display:flex;flex-wrap:wrap;grid-gap:6px;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color,#e2e8f0);padding-bottom:16px}.dark-mode .tech-tags-container{border-color:#334155;border-color:var(--border-color,#334155)}.tech-tag{display:inline-block;padding:3px 10px;background:rgba(59,130,246,.06);color:#3b82f6;color:var(--primary,#3b82f6);font-size:11px;font-weight:500;border-radius:12px;transition:all .2s ease;border:1px solid rgba(59,130,246,.1)}.dark-mode .tech-tag{background:rgba(96,165,250,.08);color:#60a5fa;color:var(--accent,#60a5fa);border-color:rgba(96,165,250,.12)}.tech-tag:hover{background:#3b82f6;background:var(--primary,#3b82f6);color:#fff;border-color:transparent}.timeline-content p strong{color:#1e293b;color:var(--text-primary,#1e293b);font-weight:600}.dark-mode .timeline-content p strong{color:#f1f5f9;color:var(--text-primary,#f1f5f9)}.period{padding:0 0 24px}.period .timeline-info{display:none}.period .timeline-marker:before{background:transparent;content:"";width:12px;height:auto;border-radius:0;top:0;bottom:24px;position:absolute;border:none;border-top:2px solid #e2e8f0;border-top:2px solid var(--border-color,#e2e8f0);border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border-color,#e2e8f0);box-shadow:none}.dark-mode .period .timeline-marker:before{border-color:#334155;border-color:var(--border-color,#334155)}.period .timeline-marker:after{content:"";height:24px;top:auto;background:#e2e8f0;background:var(--border-color,#e2e8f0)}.dark-mode .period .timeline-marker:after{background:#334155;background:var(--border-color,#334155)}.period .timeline-content{padding:28px 0 14px;background:transparent;box-shadow:none;border:none}.period .timeline-content:hover{-webkit-transform:none;transform:none;box-shadow:none}.period .timeline-title{margin:0;font-size:18px;font-weight:700;color:#1e293b;color:var(--text-primary,#1e293b);position:relative;display:inline-block}.dark-mode .period .timeline-title{color:#f1f5f9;color:var(--text-primary,#f1f5f9)}.period .timeline-title:after{content:"";position:absolute;bottom:-6px;left:0;width:28px;height:2px;background:#3b82f6;background:var(--primary,#3b82f6);border-radius:1px}@media (min-width:768px){.timeline-centered .timeline,.timeline-split .timeline{display:table}.timeline-centered .timeline-item,.timeline-split .timeline-item{display:table-row;padding:0}.timeline-centered .period .timeline-info,.timeline-centered .timeline-content,.timeline-centered .timeline-info,.timeline-centered .timeline-marker,.timeline-split .period .timeline-info,.timeline-split .timeline-content,.timeline-split .timeline-info,.timeline-split .timeline-marker{display:table-cell;vertical-align:top}.timeline-centered .timeline-marker,.timeline-split .timeline-marker{position:relative}.timeline-centered .timeline-content,.timeline-split .timeline-content{padding:20px;margin-left:16px}.timeline-centered .timeline-info,.timeline-split .timeline-info{padding-right:20px}.timeline-centered .period .timeline-title,.timeline-split .period .timeline-title{position:relative;left:-35px}}@media (min-width:992px){.timeline-centered,.timeline-centered .timeline-content,.timeline-centered .timeline-info,.timeline-centered .timeline-item,.timeline-centered .timeline-marker{display:block;margin:0;padding:0}.timeline-centered .timeline-item{padding-bottom:32px;overflow:hidden}.timeline-centered .timeline-marker{position:absolute;left:50%;margin-left:-5px}.timeline-centered .timeline-content,.timeline-centered .timeline-info{width:calc(50% - 24px)}.timeline-centered>.timeline-item:nth-child(odd) .timeline-info{float:left;text-align:right;padding-right:32px}.timeline-centered>.timeline-item:nth-child(odd) .timeline-content{float:right;text-align:left;padding-left:32px;margin:0;padding-right:32px}.timeline-centered>.timeline-item:nth-child(2n) .timeline-info{float:right;text-align:left;padding-left:32px}.timeline-centered>.timeline-item:nth-child(2n) .timeline-content{float:left;text-align:right;padding-right:32px;margin:0;padding-left:32px}.timeline-centered>.timeline-item.period .timeline-content{float:none;padding:0;width:100%;text-align:center}.timeline-centered .timeline-item.period{padding:40px 0 50px}.timeline-centered .period .timeline-marker:after{height:24px;bottom:0;top:auto}.timeline-centered .period .timeline-title{left:auto}.timeline-centered .period .timeline-title:after{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.timeline-centered>.timeline-item:nth-child(2n) .tech-tags-container{justify-content:flex-end}}@media (max-width:767px){.timeline-item{padding-left:24px;padding-bottom:24px}.timeline-content{padding:16px}.timeline-title{font-size:14px}.timeline-info span{font-size:9px;padding:4px 10px}.tech-tag{font-size:10px;padding:3px 8px}.period .timeline-title{font-size:16px}.period .timeline-content{padding:20px 0 10px}.timeline-title{margin:0 0 10px}}.marker-outline .timeline-marker:before{background:transparent;border:2px solid #3b82f6;border:2px solid var(--primary,#3b82f6)}.marker-outline .timeline-item:hover .timeline-marker:before{background:#3b82f6;background:var(--primary,#3b82f6)}.game-gallery{width:100%;padding:48px 60px;background:#fff;background:var(--light-bg,#fff);position:relative}.dark-mode .game-gallery{background:#0f172a;background:var(--light-bg,#0f172a)}.gallery-heading{text-align:center;font-size:22px;font-weight:700;color:#1e293b;color:var(--text-primary,#1e293b);margin-bottom:32px;position:relative;display:inline-block;width:100%}.dark-mode .gallery-heading{color:#f1f5f9;color:var(--text-primary,#f1f5f9)}.gallery-heading:after{content:"";position:absolute;bottom:-8px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:32px;height:3px;background:#3b82f6;background:var(--primary,#3b82f6);border-radius:2px}.slick-track{display:flex!important}.slick-slide{height:inherit!important}.slick-slide>div{height:100%}.game-slide{text-align:center;padding:16px}.game-card,.game-slide{position:relative;height:100%}.game-card{cursor:pointer;overflow:hidden;border-radius:12px;transition:all .2s ease;width:100%;max-width:500px;margin:0 auto;background:#fff;background:var(--card-bg,#fff);box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #e2e8f0;border:1px solid var(--border-color,#e2e8f0);display:flex;flex-direction:column}.dark-mode .game-card{background:#1e293b;background:var(--card-bg,#1e293b);border-color:#334155;border-color:var(--border-color,#334155)}.game-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1)}.dark-mode .game-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.2)}.game-thumbnail{border-radius:12px 12px 0 0;width:100%;height:auto;aspect-ratio:315/250;object-fit:cover;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease;flex-shrink:0}.game-card:hover .game-thumbnail{-webkit-transform:scale(1.02);transform:scale(1.02)}.game-info{padding:20px;text-align:center;flex:1 1;display:flex;flex-direction:column;min-height:180px}.game-info h3{margin:0 0 6px;font-size:16px;font-weight:600;color:#1e293b;color:var(--text-primary,#1e293b);flex-shrink:0}.dark-mode .game-info h3{color:#f1f5f9;color:var(--text-primary,#f1f5f9)}.game-date{font-size:12px;margin-bottom:10px;font-weight:500;flex-shrink:0}.game-date,.game-description{color:#64748b;color:var(--text-muted,#64748b)}.game-description{font-size:13px;margin-bottom:16px;line-height:1.5;flex:1 1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.play-button{background:#3b82f6;background:var(--primary,#3b82f6);color:#fff;border:none;padding:10px 24px;cursor:pointer;border-radius:20px;font-size:13px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px rgba(59,130,246,.25);flex-shrink:0;margin-top:auto}.play-button:hover{background:#2563eb;background:var(--primary-hover,#2563eb);box-shadow:0 4px 12px rgba(59,130,246,.35)}.mobile-hint{font-size:11px;color:#94a3b8;color:var(--text-light,#94a3b8);margin-top:8px;margin-bottom:0;font-style:italic;flex-shrink:0}.slick-next,.slick-prev{z-index:10;width:40px;height:40px}.slick-prev{left:-45px}.slick-next{right:-45px}.slick-next:before,.slick-prev:before{color:#64748b;color:var(--text-muted,#64748b);font-size:24px;opacity:.6;transition:opacity .2s ease}.slick-next:hover:before,.slick-prev:hover:before{opacity:1}.dark-mode .slick-next:before,.dark-mode .slick-prev:before{color:#94a3b8;color:var(--text-muted,#94a3b8)}.slick-dots{bottom:-30px}.slick-dots li button:before{color:#64748b;color:var(--text-muted,#64748b);opacity:.3}.slick-dots li.slick-active button:before{color:#3b82f6;color:var(--primary,#3b82f6);opacity:1}.dark-mode .slick-dots li.slick-active button:before{color:#60a5fa;color:var(--accent,#60a5fa)}.custom-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,23,42,.85);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-animation:fadeIn .25s ease;animation:fadeIn .25s ease}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.custom-modal{position:relative;width:80vw;height:80vh;background:#fff;background:var(--card-bg,#fff);border-radius:12px;overflow:hidden;-webkit-animation:scaleIn .25s ease;animation:scaleIn .25s ease;box-shadow:0 25px 50px rgba(0,0,0,.25)}.dark-mode .custom-modal{background:#1e293b;background:var(--card-bg,#1e293b)}.custom-modal iframe{width:100%;height:100%;border:none}@-webkit-keyframes scaleIn{0%{opacity:0;-webkit-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes scaleIn{0%{opacity:0;-webkit-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.close-button{position:absolute;top:12px;right:12px;width:36px;height:36px;background:rgba(0,0,0,.5);border:none;border-radius:50%;font-size:20px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.close-button:hover{background:rgba(239,68,68,.8)}@media (min-width:1400px){.game-gallery{padding:48px 80px}.slick-prev{left:-50px}.slick-next{right:-50px}}@media (max-width:1350px){.game-gallery{padding:40px 60px}.game-slide{padding:12px}.slick-prev{left:-45px}.slick-next{right:-45px}}@media (max-width:1200px){.game-gallery{padding:40px 50px}.slick-prev{left:-40px}.slick-next{right:-40px}}@media (max-width:992px){.game-gallery{padding:40px 45px}.game-slide{padding:12px}.slick-prev{left:-35px}.slick-next{right:-35px}}@media (max-width:768px){.game-gallery{width:100%;padding:32px 16px}.gallery-heading{font-size:20px;margin-bottom:24px}.game-slide{padding:8px}.game-card{width:100%;border-radius:10px}.game-thumbnail{border-radius:10px 10px 0 0}.game-info{padding:16px;min-height:160px}.game-info h3{font-size:15px}.game-description{font-size:12px;margin-bottom:12px}.play-button{padding:8px 20px;font-size:12px}.custom-modal{width:95vw;height:70vh;border-radius:10px}.slick-next,.slick-prev{display:none!important}.slick-dots{bottom:-25px}}@media (max-width:480px){.game-gallery{padding:24px 12px}.gallery-heading{font-size:18px}.game-info{padding:14px;min-height:150px}}
/*# sourceMappingURL=main.e4107cdc.chunk.css.map */