:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.groupcode-page{font-family:Inter,sans-serif;line-height:1.6;color:#333}.container{max-width:1200px;margin:0 auto;padding:0 20px}.groupcode-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);position:fixed;top:0;left:0;right:0;z-index:1000;padding:15px 0}.header-content{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;text-decoration:none;color:#333}.logo img{width:40px;height:40px;margin-right:12px}.logo h1{font-size:24px;font-weight:700;margin:0}.header-content nav ul{display:flex;list-style:none;margin:0;padding:0;gap:30px}.header-content nav a{text-decoration:none;color:#333;font-weight:500;transition:color .3s}.header-content nav a:hover{color:#007acc}.notification-badge{position:relative;background:#f44;color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:120px 0 80px;text-align:center}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.hero-text h1{font-size:48px;font-weight:800;margin-bottom:24px;line-height:1.2}.hero-text p{font-size:20px;margin-bottom:32px;opacity:.9}.cta-buttons{display:flex;gap:16px;justify-content:center}.btn{padding:16px 32px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .3s;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:#007acc;color:#fff;border:2px solid #007acc}.btn-primary:hover{background:#06a;transform:translateY(-2px)}.btn-secondary{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3)}.btn-secondary:hover{background:#ffffff1a}.code-preview{background:#1e1e1e;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px #0000004d}.code-header{background:#2d2d2d;padding:12px 16px;display:flex;align-items:center;gap:12px}.code-buttons{display:flex;gap:8px}.code-button{width:12px;height:12px;border-radius:50%}.code-button.red{background:#ff5f57}.code-button.yellow{background:#ffbd2e}.code-button.green{background:#28ca42}.code-title{color:#ccc;font-size:14px}.code-content{padding:20px;font-family:Fira Code,monospace;font-size:14px;line-height:1.6}.code-content pre{margin:0;color:#d4d4d4}.section-bg{background:#f8f9fa}section{padding:80px 0}section h2{font-size:42px;font-weight:800;text-align:center;margin-bottom:60px;color:#333}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px}.feature-card{background:#fff;padding:40px 30px;border-radius:16px;text-align:center;box-shadow:0 10px 30px #0000001a;transition:transform .3s}.feature-card:hover{transform:translateY(-5px)}.feature-icon{width:80px;height:80px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.feature-icon i{font-size:32px;color:#fff}.feature-card h3{font-size:24px;font-weight:700;margin-bottom:16px;color:#333}.installation-steps{max-width:800px;margin:0 auto}.step{display:flex;align-items:center;margin-bottom:40px;padding:30px;background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a}.step-number{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin-right:30px;flex-shrink:0}.step-content{flex:1}.step-icon{display:inline-block;margin-bottom:12px}.step-icon i{font-size:24px;color:#007acc}.usage-examples{display:grid;gap:40px}.usage-example{background:#fff;padding:40px;border-radius:16px;box-shadow:0 10px 30px #0000001a}.code-example{background:#1e1e1e;border-radius:8px;padding:20px;margin-top:20px}.code-example pre{margin:0;color:#d4d4d4;font-family:Fira Code,monospace;font-size:14px;line-height:1.6}.languages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}.language-card{background:#fff;padding:30px 20px;border-radius:16px;text-align:center;box-shadow:0 10px 30px #0000001a;transition:transform .3s}.language-card:hover{transform:translateY(-5px)}.language-icon i{font-size:48px;color:#007acc;margin-bottom:16px}.language-comment{font-family:Fira Code,monospace;background:#f8f9fa;padding:8px 12px;border-radius:4px;font-size:14px;margin:12px 0}.language-extensions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.extension{background:#007acc;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.faq-list{max-width:800px;margin:0 auto}.faq-item{margin-bottom:20px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 5px 15px #0000001a}.faq-question{width:100%;padding:24px;background:none;border:none;text-align:left;font-size:18px;font-weight:600;color:#333;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .3s}.faq-question:hover{background:#f8f9fa}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s,padding .3s}.faq-answer.open{max-height:200px;padding:0 24px 24px}.cta{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-align:center}.cta h2{color:#fff;margin-bottom:16px}.cta p{font-size:20px;opacity:.9;margin-bottom:32px}.groupcode-footer{background:#333;color:#fff;text-align:center;padding:30px 0}.groupcode-footer a{color:#007acc;text-decoration:none}@media(max-width:768px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-text h1{font-size:32px}.cta-buttons{flex-direction:column;align-items:center}.header-content nav{display:none}.step{flex-direction:column;text-align:center}.step-number{margin-right:0;margin-bottom:20px}}.tp-wrap{position:fixed;inset:0;background:#0d1117;color:#c9d1d9;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:14px;line-height:1.5;display:flex;flex-direction:column;overflow:hidden;z-index:9999}.tp-wrap *,.tp-wrap *:before,.tp-wrap *:after{box-sizing:border-box;margin:0;padding:0}.tp-titlebar{background:#21262d;border-bottom:1px solid #30363d;height:36px;display:flex;align-items:center;padding:0 16px;gap:8px;flex-shrink:0;position:relative;-webkit-user-select:none;user-select:none}.tp-tb-btn{width:12px;height:12px;border-radius:50%;cursor:pointer}.tp-tb-close{background:#ff5f57}.tp-tb-min{background:#febc2e}.tp-tb-max{background:#28c840}.tp-tb-title{position:absolute;left:50%;transform:translate(-50%);font-size:12px;color:#8b949e;letter-spacing:.02em}.tp-tb-right{margin-left:auto;font-size:11px;color:#8b949e;display:flex;gap:16px}.tp-tabbar{background:#161b22;border-bottom:1px solid #30363d;display:flex;align-items:stretch;height:32px;flex-shrink:0;overflow-x:auto}.tp-tabbar::-webkit-scrollbar{display:none}.tp-tab{display:flex;align-items:center;gap:8px;padding:0 16px;font-size:12px;color:#8b949e;border-right:1px solid #30363d;cursor:pointer;white-space:nowrap;transition:background .1s;flex-shrink:0}.tp-tab:hover{background:#21262d}.tp-tab.active{background:#0d1117;color:#c9d1d9;border-bottom:1px solid #0d1117;margin-bottom:-1px}.tp-tab-dot{width:7px;height:7px;border-radius:50%;background:#3fb950}.tp-tab-dot.red{background:#f85149}.tp-tab-dot.yellow{background:#e3b341}.tp-workspace{display:flex;flex:1;overflow:hidden}.tp-sidebar{width:220px;background:#161b22;border-right:1px solid #30363d;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.tp-sidebar-header{padding:10px 14px;font-size:11px;color:#8b949e;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #30363d;flex-shrink:0}.tp-filetree{flex:1;overflow-y:auto;padding:6px 0}.tp-filetree::-webkit-scrollbar{width:3px}.tp-filetree::-webkit-scrollbar-thumb{background:#30363d}.tp-ft-item{display:flex;align-items:center;gap:6px;padding:4px 14px;font-size:12px;color:#8b949e;cursor:pointer;transition:background .1s;white-space:nowrap}.tp-ft-item:hover{background:#21262d;color:#c9d1d9}.tp-ft-item.active{background:#3fb9501a;color:#56d364}.tp-ft-item .icon{width:16px;text-align:center;flex-shrink:0}.tp-ft-dir{color:#79c0ff;font-weight:500}.tp-ft-i1{padding-left:30px}.tp-ft-i2{padding-left:46px}.tp-ft-divider{margin-top:8px;border-top:1px solid #30363d;padding-top:8px}.tp-terminal{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.tp-output{flex:1;overflow-y:auto;padding:16px 20px;scroll-behavior:smooth}.tp-output::-webkit-scrollbar{width:4px}.tp-output::-webkit-scrollbar-thumb{background:#30363d}.tp-line{margin-bottom:0;line-height:1.65}.tp-line.gap{margin-bottom:10px}.tp-line.gap2{margin-bottom:20px}.tp-wrap .g{color:#3fb950}.tp-wrap .g2{color:#56d364}.tp-wrap .c{color:#79c0ff}.tp-wrap .y{color:#e3b341}.tp-wrap .r{color:#f85149}.tp-wrap .p{color:#bc8cff}.tp-wrap .o{color:#ffa657}.tp-wrap .gr{color:#8b949e}.tp-wrap .w{color:#c9d1d9}.tp-wrap .br{color:#f0f6fc}.tp-wrap .b{font-weight:700}.tp-wrap .dim{opacity:.5}.tp-prompt{display:flex;align-items:center;flex-wrap:wrap}.tp-prompt .user{color:#3fb950;font-weight:700}.tp-prompt .at{color:#8b949e}.tp-prompt .host{color:#79c0ff;font-weight:700}.tp-prompt .colon{color:#8b949e}.tp-prompt .path{color:#bc8cff}.tp-prompt .dollar{color:#c9d1d9;margin:0 8px}.tp-prompt .cmd{color:#f0f6fc}.tp-prompt .arg{color:#ffa657}.tp-prompt .flag{color:#e3b341}.tp-input-area{border-top:1px solid #30363d;padding:10px 20px;display:flex;align-items:center;gap:0;background:#0d1117;flex-shrink:0}.tp-input-area .tp-prompt{flex:1}.tp-cli-input{flex:1;background:transparent;border:none;outline:none;color:#f0f6fc;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:14px;caret-color:#3fb950}.tp-cli-input::placeholder{color:#8b949e;opacity:.6}.tp-statusbar{background:#1f2937;border-top:1px solid #30363d;height:22px;display:flex;align-items:center;padding:0 12px;gap:0;flex-shrink:0;font-size:11px}.tp-sb-item{display:flex;align-items:center;gap:5px;padding:0 10px;border-right:1px solid #30363d;color:#8b949e;height:100%}.tp-sb-item:first-child{background:#3fb950;color:#0d1117;font-weight:700}.tp-sb-item.blue{background:#1f6feb;color:#fff}.tp-sb-item.right{margin-left:auto;border-right:none;border-left:1px solid #30363d}.tp-cur{display:inline-block;width:8px;height:14px;background:#3fb950;animation:tp-cur-blink 1s step-end infinite;vertical-align:middle;margin-left:1px}@keyframes tp-cur-blink{0%,to{opacity:1}50%{opacity:0}}.tp-wrap ::selection{background:#3fb9504d;color:#f0f6fc}@media(max-width:640px){.tp-sidebar{display:none}.tp-wrap{font-size:12px}}body{font-family:Open Sans,sans-serif;color:#272829}a{color:#0563bb;text-decoration:none}a:hover{color:#067ded;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:Raleway,sans-serif}.back-to-top{opacity:0;visibility:hidden;z-index:996;background:#0563bb;width:40px;height:40px;border-radius:50px;transition:all .4s}.back-to-top i{font-size:28px;color:#fff;line-height:0}.back-to-top:hover{background:#0678e3;color:#fff}.back-to-top.active{visibility:visible;opacity:1}.back-to-top.active~.fixed-buttons-container .theme-toggle-btn{visibility:visible;opacity:1}#preloader{position:fixed;inset:0;z-index:9999;overflow:hidden;background:#fff}#preloader:before{content:"";position:fixed;top:calc(50% - 30px);left:calc(50% - 30px);border:6px solid #0563bb;border-top-color:#fff;border-bottom-color:#fff;border-radius:50%;width:60px;height:60px;-webkit-animation:animate-preloader 1s linear infinite;animation:animate-preloader 1s linear infinite}@-webkit-keyframes animate-preloader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes animate-preloader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media screen and (max-width:768px){[data-aos-delay]{transition-delay:0!important}}#header{position:fixed;top:0;left:0;bottom:0;z-index:9997;transition:all .5s;padding:15px;overflow-y:auto}@media(max-width:992px){#header{width:300px;background:#fff;border-right:1px solid #e6e9ec;left:-300px}}@media(min-width:992px){#main{margin-left:100px}}.nav-menu{padding:0;display:block}.nav-menu *{margin:0;padding:0;list-style:none}.nav-menu>ul>li{position:relative;white-space:nowrap}.nav-menu a,.nav-menu a:focus{display:flex;align-items:center;color:#45505b;padding:10px 18px;margin-bottom:8px;font-size:15px;border-radius:50px;background:#f2f3f5;height:56px;width:100%;overflow:hidden;transition:.3s}.nav-menu a i,.nav-menu a:focus i{font-size:20px}.nav-menu a span,.nav-menu a:focus span{padding:0 5px 0 7px;color:#45505b}@media(min-width:992px){.nav-menu a,.nav-menu a:focus{width:56px}.nav-menu a span,.nav-menu a:focus span{display:none;color:#fff}}.nav-menu a:hover,.nav-menu .active,.nav-menu .active:focus,.nav-menu li:hover>a{color:#fff;background:#0563bb}.nav-menu a:hover span,.nav-menu .active span,.nav-menu .active:focus span,.nav-menu li:hover>a span{color:#fff}.nav-menu a:hover,.nav-menu li:hover>a{width:100%;color:#fff}.nav-menu a:hover span,.nav-menu li:hover>a span{display:block}.mobile-nav-toggle{position:fixed;right:10px;top:10px;z-index:9998;border:0;background:none;font-size:28px;transition:all .4s;outline:none!important;line-height:0;cursor:pointer;border-radius:50px;padding:5px;color:#45505b}body.dark-theme .mobile-nav-toggle i,body.dark-theme .mobile-nav-toggle.bi-list{color:#fff!important}body.dark-theme .mobile-nav-active .mobile-nav-toggle{background-color:#0678e3;color:#fff}.mobile-nav-toggle i{color:#45505b}.mobile-nav-active{overflow:hidden}.mobile-nav-active #header{left:0}.mobile-nav-active .mobile-nav-toggle{color:#fff;background-color:#0563bb}#hero{width:100%;height:100vh;background:url(/assets/img/hero-bg.jpg) top right no-repeat;background-size:cover;position:relative}@media(min-width:992px){#hero{padding-left:160px}}#hero:before{content:"";background:#fffc;position:absolute;inset:0}#hero h1{margin:0;font-size:70px;font-weight:700;line-height:56px;color:#45505b}#hero p{color:#45505b;margin:15px 0 0;font-size:26px;font-family:Poppins,sans-serif}#hero p span{color:#0563bb;letter-spacing:1px}#hero .social-links{margin-top:30px}#hero .social-links a{font-size:60px;display:inline-block;color:#45505b;line-height:1;margin-right:40px;transition:.3s}#hero .social-links a:hover{color:#0563bb}@media(max-width:992px){#hero{text-align:center}#hero h1{font-size:32px;line-height:36px}#hero p{margin-top:10px;font-size:20px;line-height:24px}}body.dark-theme #hero{background:url(/assets/img/hero-bg.jpg) top right no-repeat;background-size:cover}body.dark-theme #hero:before{content:"";background:#000c;position:absolute;inset:0}body.dark-theme #hero h1,body.dark-theme #hero p{color:#fff}body.dark-theme #hero p span{color:#0678e3;padding-bottom:4px;letter-spacing:1px;border-bottom:3px solid #0678e3}body.dark-theme #hero .social-links a{color:#fff;transition:.3s}body.dark-theme #hero .social-links a:hover{color:#0678e3}body.dark-theme .typed-cursor{color:#fff}section{padding:60px 0;overflow:hidden}.section-title{text-align:center;padding-bottom:30px}.section-title h2{font-size:50px;font-weight:700;text-transform:uppercase;margin-bottom:20px;padding-bottom:20px;position:relative;color:#45505b}.section-title h2:before{content:"";position:absolute;display:block;width:120px;height:1px;background:#ddd;bottom:1px;left:calc(50% - 60px)}.section-title h2:after{content:"";position:absolute;display:block;width:40px;height:3px;background:#0563bb;bottom:0;left:calc(50% - 20px)}.section-title p{margin-bottom:0}.about .content h3{font-weight:700;font-size:26px;color:#728394}.about .content ul{list-style:none;padding:0}.about .content ul li{margin-bottom:20px;display:flex;align-items:center}.about .content ul strong{margin-right:10px}.about .content ul i{font-size:16px;margin-right:5px;color:#0563bb;line-height:0}.about .content p:last-child{margin-bottom:0}body.dark-theme #about{background:#1a1a1a}body.dark-theme #about .lead-text{color:#e0e0e0}.facts .count-box{padding:30px 30px 25px;margin-top:30px;width:100%;position:relative;text-align:center;background:#fff}.facts .count-box i{position:absolute;top:-25px;left:50%;transform:translate(-50%);font-size:24px;background:#0563bb;color:#fff;border-radius:50px;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px}.facts .count-box span{font-size:36px;display:block;font-weight:600;color:#011426}.facts .count-box p{padding:0;margin:0;font-family:Raleway,sans-serif;font-size:14px}.skills .progress{height:60px;display:block;background:none;border-radius:0}.skills .progress .skill{padding:10px 0;margin:0;text-transform:uppercase;display:block;font-weight:600;font-family:Poppins,sans-serif;color:#45505b}.skills .progress .skill .val{float:right;font-style:normal}.skills .progress-bar-wrap{background:#f2f3f5}.skills .progress-bar{width:1px;height:10px;transition:.9s;background-color:#0563bb}body.dark-theme .skill-card{background:#2d2d2d;box-shadow:0 4px 6px #0000004d}body.dark-theme .skill-card h4{color:#fff}body.dark-theme .skill-card p{color:#e0e0e0}body.dark-theme .skill-card:hover{transform:translateY(-5px);background:#363636}.resume .resume-title{font-size:26px;font-weight:700;margin-top:20px;margin-bottom:20px;color:#45505b}.resume .resume-item{margin-top:-2px;border-left:2px solid #0563bb;position:relative}.resume .resume-item h4{line-height:1.4;font-size:24px;font-weight:600;text-transform:uppercase;font-family:Poppins,sans-serif;color:#0563bb;margin-bottom:15px;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.resume .resume-item h5{font-size:16px;background:#f7f8f9;padding:5px 15px;display:inline-block;font-weight:600;margin-bottom:10px}.resume .resume-item ul{padding-left:20px}.resume .resume-item ul li{padding-bottom:10px}.resume .resume-item:last-child{padding-bottom:0}.resume .resume-item:before{content:"";position:absolute;width:16px;height:16px;border-radius:50px;left:-9px;top:0;background:#fff;border:2px solid #0563bb}body.dark-theme .resume-item{background:#3a3a3a;box-shadow:0 4px 6px #0000004d}body.dark-theme .resume-item h4{color:#fff}body.dark-theme .resume-item h5{background:#4a4a4a;color:#e0e0e0}body.dark-theme .resume-item ul li{color:#e0e0e0}body.dark-theme .resume-sidebar{background:#3a3a3a;box-shadow:0 4px 6px #0000004d}body.dark-theme .resume-sidebar h3,body.dark-theme .resume-sidebar .skill-category h4,body.dark-theme .resume-sidebar .education-item h4{color:#fff}body.dark-theme .resume-sidebar .skill-tag{background:#0678e3;color:#fff}body.dark-theme .earlier-roles{background:#2d2d2d;box-shadow:0 5px 25px #0003;color:#e0e0e0}body.dark-theme .earlier-roles h3{color:#fff}body.dark-theme .role-list li{color:#e0e0e0;border-color:#3d3d3d}body.dark-theme .role-list h4{color:#fff}body.dark-theme .role-list .tech-tag{background:#3d3d3d;color:#0678e3}body.dark-theme .role-list .tech-tag:hover{background:#0563bb;color:#fff}.services .icon-box{text-align:center;padding:70px 20px 80px;transition:all ease-in-out .3s;background:#fff;box-shadow:0 5px 90px #6e7b830d}.services .icon-box .icon{margin:0 auto;width:100px;height:100px;display:flex;align-items:center;justify-content:center;transition:ease-in-out .3s;position:relative}.services .icon-box .icon i{font-size:36px;transition:.5s;position:relative}.services .icon-box .icon svg{position:absolute;top:0;left:0}.services .icon-box .icon svg path{transition:.5s;fill:#f5f5f5}.services .icon-box h4{font-weight:600;margin:10px 0 15px;font-size:22px}.services .icon-box h4 a{color:#45505b;transition:ease-in-out .3s}.services .icon-box p{line-height:24px;font-size:14px;margin-bottom:0}.services .icon-box:hover{border-color:#fff;box-shadow:0 0 35px #00000014}.services .iconbox-blue i{color:#47aeff}.services .iconbox-blue:hover .icon i{color:#fff}.services .iconbox-blue:hover .icon path{fill:#47aeff}.services .iconbox-orange i{color:#ffa76e}.services .iconbox-orange:hover .icon i{color:#fff}.services .iconbox-orange:hover .icon path{fill:#ffa76e}.services .iconbox-pink i{color:#e80368}.services .iconbox-pink:hover .icon i{color:#fff}.services .iconbox-pink:hover .icon path{fill:#e80368}.services .iconbox-yellow i{color:#ffbb2c}.services .iconbox-yellow:hover .icon i{color:#fff}.services .iconbox-yellow:hover .icon path{fill:#ffbb2c}.services .iconbox-red i{color:#ff5828}.services .iconbox-red:hover .icon i{color:#fff}.services .iconbox-red:hover .icon path{fill:#ff5828}.services .iconbox-teal i{color:#11dbcf}.services .iconbox-teal:hover .icon i{color:#fff}.services .iconbox-teal:hover .icon path{fill:#11dbcf}.testimonials .section-header{margin-bottom:40px}.testimonials .testimonial-item{text-align:center}.testimonials .testimonial-item .testimonial-img{width:120px;border-radius:50%;border:4px solid #fff;margin:0 auto}.testimonials .testimonial-item h3{font-size:20px;font-weight:700;margin:10px 0 5px;color:#111}.testimonials .testimonial-item h4{font-size:14px;color:#999;margin:0 0 15px}.testimonials .testimonial-item .quote-icon-left,.testimonials .testimonial-item .quote-icon-right{color:#90c8fc;font-size:26px}.testimonials .testimonial-item .quote-icon-left{display:inline-block;left:-5px;position:relative}.testimonials .testimonial-item .quote-icon-right{display:inline-block;right:-5px;position:relative;top:10px}.testimonials .testimonial-item p{font-style:italic;margin:0 auto 15px}.testimonials .swiper-pagination{margin-top:20px;position:relative}.testimonials .swiper-pagination .swiper-pagination-bullet{width:12px;height:12px;background-color:#fff;opacity:1;border:1px solid #0563bb}.testimonials .swiper-pagination .swiper-pagination-bullet-active{background-color:#0563bb}@media(min-width:992px){.testimonials .testimonial-item p{width:80%}}.contact .info{width:100%;background:#fff}.contact .info i{font-size:20px;color:#0563bb;float:left;width:44px;height:44px;background:#eef7ff;display:flex;justify-content:center;align-items:center;border-radius:50px;transition:all .3s ease-in-out}.contact .info h4{padding:0 0 0 60px;font-size:22px;font-weight:600;margin-bottom:5px;color:#45505b}.contact .info p{padding:0 0 0 60px;margin-bottom:0;font-size:14px;color:#728394}.contact .info .email,.contact .info .phone{margin-top:40px}.center{display:table;margin:auto}.contact .info .email:hover i,.contact .info .address:hover i,.contact .info .phone:hover i{background:#0563bb;color:#fff}.contact .php-email-form{width:100%;background:#fff}.contact .php-email-form .form-group{padding-bottom:8px}.contact .php-email-form .error-message{display:none;color:#fff;background:#ed3c0d;text-align:left;padding:15px;font-weight:600}.contact .php-email-form .error-message br+br{margin-top:25px}.contact .php-email-form .sent-message{display:none;color:#fff;background:#18d26e;text-align:center;padding:15px;font-weight:600}.contact .php-email-form .loading{display:none;background:#fff;text-align:center;padding:15px}.contact .php-email-form .loading:before{content:"";display:inline-block;border-radius:50%;width:24px;height:24px;margin:0 10px -6px 0;border:3px solid #18d26e;border-top-color:#eee;-webkit-animation:animate-loading 1s linear infinite;animation:animate-loading 1s linear infinite}.contact .php-email-form input,.contact .php-email-form textarea{border-radius:4px;box-shadow:none;font-size:14px}.contact .php-email-form input{height:44px}.contact .php-email-form textarea{padding:10px 12px}.contact .php-email-form button[type=submit]{background:#0563bb;border:0;padding:10px 35px;color:#fff;transition:.4s;border-radius:50px}.contact .php-email-form button[type=submit]:hover{background:#0678e3}@-webkit-keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body.dark-theme .contact-card{background:#3a3a3a;box-shadow:0 4px 6px #0000004d}body.dark-theme .contact-card .icon-box{background:#0678e3}body.dark-theme .contact-details h4,body.dark-theme .contact-details p,body.dark-theme .contact-details a{color:#e0e0e0}#footer{background:#f7f8f9;color:#45505b;font-size:14px;text-align:center;padding:30px 0}#footer h3{font-size:36px;font-weight:700;position:relative;font-family:Poppins,sans-serif;padding:0;margin:0 0 15px}#footer p{font-size:15;font-style:italic;padding:0;margin:0 0 40px}#footer .social-links{margin:0 0 50px;font-size:30px}#footer .social-links a{font-size:44px;display:inline-block;background:#0563bb;color:#fff;line-height:1;padding:8px 0;margin-right:50px;border-radius:50%;text-align:center;width:60px;height:60px;transition:.3s}#footer .social-links a:hover{background:#0678e3;color:#fff;text-decoration:none}#footer .copyright{margin:0 0 5px}#footer .credits{font-size:13px}body.dark-theme #footer{background:#2d2d2d;color:#e0e0e0}body.dark-theme #footer h3{color:#fff}body.dark-theme #footer p{color:#e0e0e0}body.dark-theme #footer .social-links a{background:#0678e3;color:#fff}body.dark-theme #footer .social-links a:hover{background:#0563bb}body.dark-theme #footer .copyright{color:#e0e0e0}body.dark-theme #footer .credits{color:#a0a0a0}p.header{font-size:30px;text-align:justify}p.header1{font-size:25px;text-align:justify}p.header2{font-size:20px;text-align:justify}.about-wrapper{margin:0 auto;padding:2rem}.about-intro{text-align:center;margin-bottom:4rem}.section-title{font-size:2.5rem;color:#2c3e50;margin-bottom:1.5rem;position:relative}.lead-text{font-size:1.2rem;line-height:1.8;color:#505f6f;max-width:800px;margin:0 auto}.skills-container{margin-bottom:4rem}.skills-title{font-size:1.8rem;color:#2c3e50;margin-bottom:2rem;display:flex;align-items:center;gap:.5rem}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.skill-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 6px #0000001a;transition:transform .3s ease}.skill-card:hover{transform:translateY(-5px)}.skill-icon{font-size:2rem;color:#0563bb;margin-bottom:1rem}@media(max-width:768px){.skills-grid{grid-template-columns:1fr}.about-intro{margin-bottom:2rem}}.profile-container{margin:0 auto;padding:2rem}.profile-card{display:flex;gap:3rem;background:#fff;border-radius:15px;padding:2rem;box-shadow:0 5px 20px #0000001a}.profile-image{flex:0 0 300px;position:relative;border-radius:15px;overflow:hidden}.profile-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.profile-image:hover img{transform:scale(1.05)}.profile-content{flex:1}.profile-title{font-size:2rem;color:#2c3e50;margin-bottom:2rem}.profile-info{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.info-item{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.info-item i{font-size:1.2rem;color:#0563bb;width:25px}.info-item strong{min-width:100px;color:#45505b}.info-item a{color:#0563bb;text-decoration:none;transition:color .3s ease;overflow-wrap:anywhere}.info-item a:hover{color:#067ded}.status.available{color:#28a745;font-weight:500}@media(max-width:768px){.profile-card{flex-direction:column}.profile-image{flex:0 0 auto}.profile-info{grid-template-columns:1fr}}body.dark-theme .profile-card{background:#2d2d2d;box-shadow:0 5px 20px #0000004d}body.dark-theme .profile-title,body.dark-theme .info-item strong{color:#fff}body.dark-theme .info-item span,body.dark-theme .info-item a{color:#e0e0e0}body.dark-theme .info-item a:hover{color:#0678e3}body.dark-theme .status.available{color:#4cd964}.facts{padding:60px 0;background:#f8f9fa}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;margin:40px 0}.fact-card{background:#fff;padding:30px;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease}.fact-card:hover{transform:translateY(-10px)}.fact-number{font-size:48px;font-weight:700;color:#0563bb;margin-bottom:10px}.fact-title{font-size:18px;color:#45505b}.services-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin:60px 0}.service-box{background:#fff;padding:30px;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:all .3s ease}.service-box:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.service-icon{font-size:36px;color:#0563bb;margin-bottom:20px}.tech-stack{margin:15px 0;display:flex;flex-wrap:wrap;gap:10px}.tech-tag-category{font-weight:600;color:#45505b;margin-right:8px;font-size:14px}.tech-tag{display:inline-block;padding:5px 12px;background:#e7f3ff;color:#0563bb;border-radius:15px;font-size:13px;margin:0 5px 5px 0;transition:all .3s ease}.tech-tag:hover{background:#0563bb;color:#fff;transform:translateY(-2px)}.stack-title{font-size:24px;margin-bottom:30px;color:#45505b}.stack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:30px;margin-top:30px}.stack-item{background:#fff;padding:20px;border-radius:10px;box-shadow:0 3px 10px #0000001a;transition:all .3s ease}.stack-item:hover{transform:translateY(-5px);background:#0563bb;color:#fff}.stack-item i{font-size:36px;margin-bottom:10px}.stack-item span{display:block;font-size:14px}@media(max-width:768px){.cards-grid{grid-template-columns:1fr 1fr}.services-container{grid-template-columns:1fr}.stack-grid{grid-template-columns:repeat(2,1fr)}}.skills-wrapper{padding:20px 0}.skill-category{margin-bottom:40px}.skill-category h3{color:#45505b;font-size:26px;margin-bottom:20px}.skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.skill-item{text-align:center;padding:20px;background:#fff;border-radius:8px;box-shadow:0 0 20px #0000001a;transition:transform .3s ease}.skill-item:hover{transform:translateY(-5px)}.skill-item i{font-size:40px;color:#0563bb;margin-bottom:15px}.skill-item span{display:block;font-size:16px;color:#45505b}body.dark-theme .skills-title i{color:#0678e3}body.dark-theme .skill-item{background:#2d2d2d;box-shadow:0 0 20px #0000004d}body.dark-theme .skill-item:hover{background:#363636}body.dark-theme .skill-item span{color:#e0e0e0}.resume{padding:60px 0;background:#f8f9fa}.status-banner{text-align:center;margin:20px 0}.open-badge{background:#28a745;color:#fff;padding:10px 20px;border-radius:25px;font-weight:500;font-size:16px}.resume-timeline{position:relative;padding:20px 0}.resume-item{padding:30px;margin-bottom:30px;background:#fff;border-radius:15px;box-shadow:0 5px 25px #0000001a}.resume-item h4{color:#0563bb;font-size:22px;font-weight:600;margin-bottom:10px}.resume-item h5{font-size:16px;color:#45505b;margin-bottom:10px}.tech-stack{margin:15px 0}.tech-tag{display:inline-block;padding:5px 12px;background:#e7f3ff;color:#0563bb;border-radius:15px;margin:0 5px 5px 0;font-size:14px}.achievements li{margin-bottom:12px;color:#45505b}.resume-sidebar{background:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 25px #0000001a}.skill-category{margin-bottom:25px}.skill-tag{display:inline-block;padding:8px 16px;background:#0563bb;color:#fff;border-radius:20px;margin:0 8px 8px 0;font-weight:500}.earlier-roles{background:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 25px #0000001a}.role-list li{margin-bottom:20px}@media(max-width:768px){.resume-sidebar{margin-top:30px}}.contact{padding:60px 0;background:#f8f9fa}.contact .section-title p{color:#666;margin-top:10px;font-size:18px}.contact-wrapper{margin:0 auto;padding:40px 20px}.contact-info-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-bottom:60px}.contact-card{background:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 20px #0000001a;display:flex;align-items:center;transition:transform .3s ease}.contact-card:hover{transform:translateY(-5px)}.contact-card .icon-box{width:60px;height:60px;background:#0563bb;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:20px}.contact-card .icon-box i{font-size:24px;color:#fff}.contact-details h4{color:#45505b;font-size:20px;margin-bottom:5px}.contact-details p,.contact-details a{color:#728394;margin:0;transition:color .3s ease}.contact-details a:hover{color:#0563bb}.social-links-container{text-align:center}.social-links-container h3{color:#45505b;margin-bottom:30px;font-size:24px}.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin:0 auto}.social-card{background:#fff;padding:20px;border-radius:10px;box-shadow:0 3px 15px #0000001a;transition:all .3s ease;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:10px}.social-card:hover{transform:translateY(-5px);background:#0563bb}.social-card i{font-size:28px;color:#0563bb;transition:color .3s ease}.social-card span{color:#45505b;font-size:16px;transition:color .3s ease}.social-card:hover i,.social-card:hover span{color:#fff}@media(max-width:768px){.contact-info-container{grid-template-columns:1fr}.social-grid{grid-template-columns:repeat(2,1fr)}}#portfolio-hero{width:100%;height:60vh;background:linear-gradient(#000000b3,#000000b3),url(/assets/img/hero-bg.jpg);background-size:cover;background-position:center;padding:0 15px}#portfolio-hero h1{font-size:48px;color:#fff;margin-bottom:20px}#portfolio-hero h2{color:#eee;margin-bottom:0;font-size:24px}#portfolio-grid{display:flex;flex-wrap:wrap;margin:-15px;width:calc(100% + 30px)}.portfolio-item{position:relative;width:calc(33.333% - 30px);margin:15px;overflow:hidden}@media(max-width:992px){.portfolio-item{width:calc(50% - 30px)}}@media(max-width:576px){.portfolio-item{width:calc(100% - 30px)}}.fixed-buttons-container{position:fixed;bottom:15px;right:0;display:flex;align-items:center;gap:10px;z-index:996;transition:transform .3s ease}.fixed-buttons-container.shift-left{transform:translate(-50px)}.portfolio-btn,.theme-toggle-btn,.back-to-top{position:relative;background:#0563bb;width:40px;height:40px;border-radius:50px;transition:all .4s;color:#fff;font-size:24px;border:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0;text-decoration:none}.portfolio-btn i,.theme-toggle-btn i,.back-to-top i{font-size:24px;line-height:1;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center}body.dark-theme h1,body.dark-theme h2,body.dark-theme h3,body.dark-theme h4,body.dark-theme h5,body.dark-theme h6,body.dark-theme .section-title h2{color:#fff}body.dark-theme .section-title h2:before{background:#404040}body.dark-theme .fact-card{background:#3a3a3a;box-shadow:0 4px 6px #0000004d}body.dark-theme .fact-number{color:#fff}body.dark-theme .fact-title{color:#e0e0e0}body.dark-theme .fact-icon i{color:#0678e3}body.dark-theme .service-box{background:#3a3a3a;box-shadow:0 4px 6px #0000004d}body.dark-theme .service-box:hover{background:#4a4a4a}body.dark-theme .service-icon{color:#0678e3}body.dark-theme .service-box h3{color:#fff}body.dark-theme .service-box p{color:#e0e0e0}.dark-theme .social-links a{background:#2b2b2b;color:#fff}.dark-theme .social-links a:hover{background:#149ddd;color:#fff;text-decoration:none}.dark-theme .resume .resume-item{border-left-color:#2b2b2b}.dark-theme .resume .resume-item h4{color:#fff}.dark-theme .resume .resume-item h5{color:#149ddd;background:#2b2b2b}.dark-theme .resume .resume-item:before{border:2px solid #2b2b2b;background:#18181b}body.dark-theme{background-color:#1a1a1a;color:#fff}body.dark-theme section{background-color:#1a1a1a}body.dark-theme .social-links a{color:#fff;background:#2d2d2d}body.dark-theme .social-links a:hover{background:#0563bb}body.dark-theme .resume .resume-item{background:#2d2d2d;box-shadow:0 5px 25px #0003}body.dark-theme .resume .resume-item h4{color:#fff}body.dark-theme .resume .resume-item h5{color:#e0e0e0;background:#3d3d3d}body.dark-theme .resume .resume-item ul li{color:#e0e0e0}body.dark-theme .section-title h2{color:#fff}body.dark-theme .social-card{background:#2d2d2d;box-shadow:0 4px 6px #0000004d}body.dark-theme .social-card i{color:#0678e3}body.dark-theme .social-card span{color:#e0e0e0}body.dark-theme .social-card:hover{background:#0678e3}body.dark-theme .social-card:hover i,body.dark-theme .social-card:hover span,body.dark-theme .social-links-container h3{color:#fff}body.dark-theme #header{border-right-color:#3d3d3d}@media(max-width:992px){body.dark-theme #header{background:#1a1a1a;border-right:1px solid #3d3d3d}}body.dark-theme .nav-menu a,body.dark-theme .nav-menu a:focus{background:#3d3d3d;color:#fff}body.dark-theme .nav-menu a span,body.dark-theme .nav-menu a:focus span{color:#e0e0e0}body.dark-theme .nav-menu a:hover,body.dark-theme .nav-menu .active,body.dark-theme .nav-menu .active:focus,body.dark-theme .nav-menu li:hover>a{background:#0678e3;color:#fff}body.dark-theme .mobile-nav-toggle i{color:#fff}body.dark-theme .mobile-nav-active .mobile-nav-toggle{background-color:#0678e3}body.dark-theme .tech-tag{background:#3d3d3d;color:#b3d9fd;border:1px solid #4a4a4a}body.dark-theme .tech-tag:hover{background:#0678e3;color:#fff;border-color:#0678e3}body.dark-theme .tech-tag-category{color:#e0e0e0}#portfolio-hero{width:100%;height:100vh;background:url(/assets/img/hero-bg.jpg) center/cover no-repeat;position:relative;padding:0;margin-left:0}#portfolio-hero:before{content:"";background:#00000080;position:absolute;inset:0}#portfolio-hero h1{margin:0;font-size:64px;font-weight:700;line-height:56px;color:#fff}#portfolio-hero h2{color:#fff;margin:10px 0 0;font-size:24px}body{margin:0;padding:0;overflow-x:hidden;scrollbar-width:thin;scrollbar-gutter:stable}.portfolio-container{margin:0;padding:20px}#portfolio-filters{padding:0;margin:0 auto 25px;list-style:none;text-align:center;display:flex;justify-content:center;gap:10px}#portfolio-filters{margin:0 auto 25px;list-style:none;text-align:center;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:100%;padding:10px}#portfolio-filters li{cursor:pointer;padding:8px 16px;font-size:14px;font-weight:600;text-transform:uppercase;color:#45505b;border-radius:50px;transition:all .3s ease;white-space:nowrap;margin:0;flex:0 1 auto}@media(max-width:768px){#portfolio-filters{gap:6px;padding:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;justify-content:flex-start;mask-image:linear-gradient(to right,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 90%,transparent 100%)}#portfolio-filters::-webkit-scrollbar{display:none}#portfolio-filters li{padding:6px 12px;font-size:13px;flex-shrink:0}.portfolio-filters-container{position:relative;margin:0 auto 25px;max-width:100%}.portfolio-filters-container:after{content:"";position:absolute;right:0;top:0;bottom:0;width:30px;background:linear-gradient(to right,transparent,rgba(255,255,255,.9));pointer-events:none}body.dark-theme .portfolio-filters-container:after{background:linear-gradient(to right,transparent,rgba(26,26,26,.9))}}#portfolio-filters li{cursor:pointer;padding:8px 16px;font-size:14px;font-weight:600;text-transform:uppercase;color:#45505b;border-radius:50px;transition:all .3s ease}.portfolio-wrap{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 0 20px #0000001a;transition:.3s}.portfolio-info{opacity:0;position:absolute;inset:0;padding:20px;background:#000c;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .3s ease}.portfolio-links a{color:#fff;font-size:24px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:.3s}.modal{display:none;position:fixed;z-index:9999;inset:0;background:#0000;transition:background-color .3s ease-in-out}.modal.show{background:#000000e6}.modal-content{background:#fefefe;margin:2% auto;border-radius:12px;width:95%;max-width:1400px;height:90vh;opacity:0;transform:translateY(-20px);transition:all .3s ease-in-out;height:95vh;margin:2.5vh auto;padding:15px;overflow:hidden}.modal-body{display:flex;gap:30px;margin-top:20px;height:calc(90vh - 100px);overflow:hidden}.modal-image-column{flex:1;max-height:100%;overflow:hidden}.modal-info-column{flex:1;padding:20px;overflow-y:auto;max-height:100%}.portfolioSwiper{width:100%;height:100%;max-height:calc(90vh - 150px)}.modal-info-column h3{color:#0563bb;font-size:24px;margin-bottom:15px}.modal-info-column .date{color:#666;font-size:14px;margin-bottom:20px}.description-section{margin:20px 0}.description-section h4{font-size:18px;margin-bottom:10px}body.dark-theme .modal-content{background:#2d2d2d}body.dark-theme .modal-info-column h3{color:#0678e3}body.dark-theme .modal-info-column .date{color:#b0b0b0}@media(max-width:768px){.modal-body{flex-direction:column}.modal-image-column,.modal-info-column{width:100%}.modal-info-column{max-height:40vh}.modal-content{width:98%;margin:1vh auto;padding:10px}.modal-body{flex-direction:column;height:calc(95vh - 60px);gap:15px}.modal-image-column{height:40vh;max-height:40vh;width:100%}.modal-info-column{height:calc(55vh - 60px);width:100%;padding:10px}.portfolioSwiper{height:100%;max-height:40vh}.modal-header{padding:10px 0;margin-bottom:10px}.modal-header h2{font-size:20px}.close{font-size:24px;padding:5px 10px}.modal-info-column h3{font-size:18px;margin-bottom:10px}.description-section h4{font-size:16px}.description-section p{font-size:14px}}.modal.show .modal-content{opacity:1;transform:translateY(0)}.close{float:right;font-size:28px;font-weight:700;color:#aaa;cursor:pointer}.close:hover{color:#000}.portfolioSwiper{width:100%;height:500px}.portfolioSwiper .swiper-slide{text-align:center}.portfolioSwiper img{max-height:450px;object-fit:contain}.swiper-pagination-bullet{width:12px;height:12px;background:#fff;opacity:1;border:1px solid #0563bb}.portfolio-wrap{position:relative;overflow:hidden}.portfolio-info{opacity:0;position:absolute;bottom:-60px;left:0;right:0;background:#000c;padding:15px;transition:all .3s ease}.portfolio-links a{color:#fff;font-size:24px;margin:0 5px;transition:.3s}.portfolio-links a:hover{color:#149ddd}.portfolio-details{padding-top:40px}.portfolio-details .portfolio-details-slider img{width:100%}.portfolio-details .portfolio-details-slider .swiper-pagination{margin-top:20px;position:relative}.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet{width:12px;height:12px;background-color:#fff;opacity:1;border:1px solid #0563bb}.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet-active{background-color:#0563bb}.portfolio-details .portfolio-info{padding:30px;box-shadow:0 0 30px #45505b14}.portfolio-details .portfolio-info h3{font-size:22px;font-weight:700;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #eee}.portfolio-details .portfolio-info ul{list-style:none;padding:0;font-size:15px}.portfolio-details .portfolio-info ul li+li{margin-top:10px}.portfolio-details .portfolio-description{padding-top:30px}.portfolio-details .portfolio-description h2{font-size:26px;font-weight:700;margin-bottom:20px}.portfolio-details .portfolio-description p{padding:0}.portfolio-links{display:flex;justify-content:center;gap:10px}.portfolio-links a{color:#fff;font-size:28px;transition:.3s;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.portfolio-links a:hover{color:#0563bb}.portfolio .portfolio-item{margin-bottom:30px}.portfolio #portfolio-flters{margin:0 auto 25px;list-style:none;text-align:center;background:#fff;border-radius:50px;padding:2px 15px}.portfolio #portfolio-flters li{cursor:pointer;display:inline-block;padding:10px 15px;font-size:14px;font-weight:600;line-height:1;text-transform:uppercase;color:#272829;margin-bottom:5px;transition:all .3s ease-in-out}.portfolio #portfolio-flters li:hover,.portfolio #portfolio-flters li.filter-active{color:#0563bb}.portfolio #portfolio-flters li:last-child{margin-right:0}.portfolio .portfolio-wrap{transition:.3s;position:relative;overflow:hidden;border-radius:8px;padding:10px;box-shadow:0 0 20px #0000001a}.portfolio-wrap:hover{transform:translateY(-5px)}.portfolio-wrap img{transition:.3s}.portfolio-info{opacity:0;position:absolute;inset:0;padding:20px;background:#000c;transition:opacity .3s ease;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.portfolio-info h4{color:#fff;font-size:18px;font-weight:600;margin-bottom:5px}.portfolio-info h5{color:#eee;font-size:16px;margin-bottom:10px}.portfolio-info p{color:#ccc;font-size:14px;margin-bottom:15px}.portfolio-wrap:hover .portfolio-info{opacity:1;transform:translateY(0)}#portfolio-filters{padding:0;margin:0 auto 20px;list-style:none;text-align:center}#portfolio-filters li{cursor:pointer;display:inline-block;padding:8px 15px;font-size:14px;font-weight:600;line-height:1;text-transform:uppercase;color:#45505b;transition:all .3s ease-in-out;border-radius:50px;margin:0 4px}#portfolio-filters li:hover,#portfolio-filters li.filter-active{background:#0563bb;color:#fff}.portfolio{padding:60px 0}.portfolio-item{margin-bottom:30px}.portfolio-wrap{position:relative;overflow:hidden;border-radius:8px;transition:all .3s ease}.portfolio-wrap img{width:100%;transition:transform .5s ease}.portfolio-info{opacity:0;position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .3s ease}.portfolio-wrap:hover .portfolio-info{opacity:1}.portfolio-wrap:hover img{transform:scale(1.1)}#portfolio-filters{margin-bottom:30px;list-style:none;padding:0;display:flex;justify-content:center;gap:10px}#portfolio-filters li{cursor:pointer;padding:8px 16px;border-radius:20px;background:#f5f5f5;transition:all .3s ease}#portfolio-filters li.filter-active{background:#0563bb;color:#fff}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header .close{font-size:28px;font-weight:700;cursor:pointer;border:none;background:none;padding:5px}.resources-section{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px}.resource-link{display:inline-flex;align-items:center;margin:5px 10px;padding:8px 15px;background:#0563bb;color:#fff;border-radius:4px;text-decoration:none;transition:all .3s ease}.resource-link:hover{background:#0056b3;transform:translateY(-2px)}.resource-link i{margin-right:8px}body.dark-theme #portfolio{background:#1a1a1a}body.dark-theme #portfolio-filters{background:#2d2d2d;border-radius:20px}body.dark-theme #portfolio-filters li{color:#e0e0e0;background:#3d3d3d}body.dark-theme #portfolio-filters li:hover,body.dark-theme #portfolio-filters li.filter-active{background:#0678e3;color:#fff}body.dark-theme .portfolio-wrap{background:#2d2d2d;box-shadow:0 0 20px #0000004d}body.dark-theme .modal-content{background:#2d2d2d;color:#e0e0e0}body.dark-theme .modal-header h2{color:#fff}body.dark-theme .resources-section{background:#3d3d3d}body.dark-theme .resource-link{background:#0678e3;color:#fff}body.dark-theme .resource-link:hover{background:#0563bb}body.dark-theme .portfolio-details{background:#1a1a1a}body.dark-theme .portfolio-description h2,body.dark-theme .portfolio-info h3{color:#fff}body.dark-theme .portfolio-description p,body.dark-theme .portfolio-info p{color:#e0e0e0}body.dark-theme .close{color:#fff}body.dark-theme .close:hover{color:#0678e3}.links-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:0}.link-card{position:relative;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 15px #0000001a;transition:all .3s ease;cursor:pointer;height:100%;width:100%;display:flex;flex-direction:column;margin:0}.link-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026}.link-icon{font-size:24px;color:#149ddd;margin-bottom:15px}.link-content{flex:1;display:flex;flex-direction:column}.link-content h4{color:#173b6c;font-size:18px;margin-bottom:10px;line-height:1.4}.link-content p{color:#666;font-size:14px;margin-bottom:15px;flex:1}.link-meta{display:flex;gap:10px;font-size:14px;color:#666;margin-top:auto;padding-top:15px;border-top:1px solid #eee}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.tag{background:#e9ecef;padding:4px 8px;border-radius:4px;font-size:12px;color:#666}.link-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.category-title{color:#173b6c;margin:0 0 20px;font-size:26px;font-weight:700}.swiper-container{position:relative;width:100%;overflow:hidden;padding:0;margin:0}.swiper-wrapper{padding:0}.swiper-slide{height:auto;width:auto;flex-shrink:0;padding:0 10px;margin-right:0!important}.swiper-slide .link-card{height:100%;margin:0}.swiper-slide .links-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0}@media(max-width:1200px){.swiper-slide .links-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.swiper-slide .links-grid{grid-template-columns:1fr}.swiper-container{padding:20px 30px}}.swiper-button-next,.swiper-button-prev{display:none}.swiper-pagination{position:relative;margin-top:10px;bottom:0}.swiper-pagination-bullet{width:12px;height:12px;background:#ddd;opacity:1}.swiper-pagination-bullet-active{background:#0563bb}.linksSwiper{padding:20px 40px;margin:0 auto;overflow:hidden;position:relative}.linksSwiper .links-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0}.swiper-button-next,.swiper-button-prev{color:#149ddd;background:#ffffffe6;width:40px;height:40px;border-radius:50%;box-shadow:0 2px 6px #0000001a}.swiper-button-next:after,.swiper-button-prev:after{font-size:20px}.swiper-pagination{position:relative;margin-top:10px}@media(max-width:1200px){.linksSwiper .links-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.linksSwiper .links-grid{grid-template-columns:1fr}}.swiper-slide{height:auto;display:flex;align-items:stretch}body.dark-theme .category-title{color:#fff}body.dark-theme .link-card{background:#2d2d2d;box-shadow:0 2px 15px #0000004d}body.dark-theme .link-card:hover{box-shadow:0 5px 20px #0006}body.dark-theme .link-content h4{color:#fff}body.dark-theme .link-content p{color:#e0e0e0}body.dark-theme .link-meta{color:#b0b0b0;border-top-color:#3d3d3d}body.dark-theme .tag{background:#3d3d3d;color:#e0e0e0}body.dark-theme .link-icon{color:#0678e3}body.dark-theme .swiper-button-next,body.dark-theme .swiper-button-prev{background:#2d2d2de6;color:#0678e3}body.dark-theme .swiper-pagination-bullet{background:#3d3d3d;border-color:#0678e3}body.dark-theme .swiper-pagination-bullet-active{background:#0678e3}.links-section{max-width:100%;margin:0 auto;padding:0 15px;overflow:hidden}.col-lg-12[data-aos=fade-up]{margin-bottom:40px}.col-lg-12[data-aos=fade-up]:last-child{margin-bottom:0}
