body{background-color:var(--background);transition:background-color .3s ease;overflow-x:hidden}.project-card-link{text-decoration:none;color:inherit;display:block;width:100%}.project-card-link:hover .project-card{border-color:var(--border-hover);box-shadow:0 8px 30px #0000004d;transform:translateY(-6px)}.project-card{background-color:var(--background-card);overflow:hidden;width:100%;display:flex;flex-direction:column;transition:all .3s ease;border:1px solid var(--border);position:relative;cursor:pointer}.project-card:hover{transform:translateY(-6px);box-shadow:0 8px 30px #0000004d;border-color:var(--border-hover)}.project-card-bookmark{position:absolute;top:.5rem;right:.5rem;z-index:10}.project-card-bookmark .bookmark-btn{background:var(--background);border-radius:50%;box-shadow:0 2px 8px #0003}.project-image .image-container,.project-image .project-card-image{width:100%;height:200px;border-radius:0}.project-image img,.project-image .lazy-image{width:100%!important;height:100%!important;object-fit:cover;border-bottom:1px solid var(--border);transition:transform .5s ease!important}.project-card:hover .project-image img,.project-card-link:hover .project-image img,.project-card:hover .project-image .lazy-image,.project-card-link:hover .project-image .lazy-image,.project-card:hover .project-image .image-container img,.project-card-link:hover .project-image .image-container img{transform:scale(1.08)!important}.project-details{flex-grow:1;display:flex;flex-direction:column}.tech-stack{font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:8px 12px;background-color:var(--primary-light)}.project-details h3{font-size:1.2rem;color:var(--text);padding:12px;margin:0;transition:color .3s ease}.project-details p{font-size:.9rem;color:var(--text-secondary);padding:0 12px 12px;flex-grow:1;margin:0;line-height:1.5;text-align:justify}.project-links{display:flex;justify-content:space-between;gap:10px;padding:2rem .75rem .75rem;border-top:1px solid var(--primary-light)}.project-section-contact-button{background-color:transparent;color:var(--text);cursor:pointer;display:flex;align-items:center;font-size:.9rem;border-width:1px;border-style:solid;border-color:var(--border);border-image:initial;padding:8px 16px;transition:background-color .3s ease,border-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;border-radius:4px}.project-section-contact-button:hover{background-color:var(--primary);border-color:var(--primary);color:var(--button-text);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.3)}.live-link,.cached-link,.details-link{text-decoration:none}.details-btn{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.details-btn:hover{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text)}.carousel .control-arrow,.carousel.carousel-slider .control-arrow{-webkit-transition:all .25s ease-in;-moz-transition:all .25s ease-in;-ms-transition:all .25s ease-in;-o-transition:all .25s ease-in;transition:all .25s ease-in;opacity:.4;filter:alpha(opacity=40);position:absolute;z-index:2;top:20px;background:none;border:0;font-size:32px;cursor:pointer}.carousel .control-arrow:focus,.carousel .control-arrow:hover{opacity:1;filter:alpha(opacity=100)}.carousel .control-arrow:before,.carousel.carousel-slider .control-arrow:before{margin:0 5px;display:inline-block;border-top:8px solid transparent;border-bottom:8px solid transparent;content:""}.carousel .control-disabled.control-arrow{opacity:0;filter:alpha(opacity=0);cursor:inherit;display:none}.carousel .control-prev.control-arrow{left:0}.carousel .control-prev.control-arrow:before{border-right:8px solid #fff}.carousel .control-next.control-arrow{right:0}.carousel .control-next.control-arrow:before{border-left:8px solid #fff}.carousel-root{outline:none}.carousel{position:relative;width:100%}.carousel *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.carousel img{width:100%;display:inline-block;pointer-events:none}.carousel .carousel{position:relative}.carousel .control-arrow{outline:0;border:0;background:none;top:50%;margin-top:-13px;font-size:18px}.carousel .thumbs-wrapper{margin:20px;overflow:hidden}.carousel .thumbs{-webkit-transition:all .15s ease-in;-moz-transition:all .15s ease-in;-ms-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translateZ(0);position:relative;list-style:none;white-space:nowrap}.carousel .thumb{-webkit-transition:border .15s ease-in;-moz-transition:border .15s ease-in;-ms-transition:border .15s ease-in;-o-transition:border .15s ease-in;transition:border .15s ease-in;display:inline-block;margin-right:6px;white-space:nowrap;overflow:hidden;border:3px solid #fff;padding:2px}.carousel .thumb:focus{border:3px solid #ccc;outline:none}.carousel .thumb.selected,.carousel .thumb:hover{border:3px solid #333}.carousel .thumb img{vertical-align:top}.carousel.carousel-slider{position:relative;margin:0;overflow:hidden}.carousel.carousel-slider .control-arrow{top:0;color:#fff;font-size:26px;bottom:0;margin-top:0;padding:5px}.carousel.carousel-slider .control-arrow:hover{background:#0003}.carousel .slider-wrapper{overflow:hidden;margin:auto;width:100%;-webkit-transition:height .15s ease-in;-moz-transition:height .15s ease-in;-ms-transition:height .15s ease-in;-o-transition:height .15s ease-in;transition:height .15s ease-in}.carousel .slider-wrapper.axis-horizontal .slider{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-horizontal .slider .slide{flex-direction:column;flex-flow:column}.carousel .slider-wrapper.axis-vertical{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex}.carousel .slider-wrapper.axis-vertical .slider{-webkit-flex-direction:column;flex-direction:column}.carousel .slider{margin:0;padding:0;position:relative;list-style:none;width:100%}.carousel .slider.animated{-webkit-transition:all .35s ease-in-out;-moz-transition:all .35s ease-in-out;-ms-transition:all .35s ease-in-out;-o-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.carousel .slide{min-width:100%;margin:0;position:relative;text-align:center}.carousel .slide img{width:100%;vertical-align:top;border:0}.carousel .slide iframe{display:inline-block;width:calc(100% - 80px);margin:0 40px 40px;border:0}.carousel .slide .legend{-webkit-transition:all .5s ease-in-out;-moz-transition:all .5s ease-in-out;-ms-transition:all .5s ease-in-out;-o-transition:all .5s ease-in-out;transition:all .5s ease-in-out;position:absolute;bottom:40px;left:50%;margin-left:-45%;width:90%;border-radius:10px;background:#000;color:#fff;padding:10px;font-size:12px;text-align:center;opacity:.25;-webkit-transition:opacity .35s ease-in-out;-moz-transition:opacity .35s ease-in-out;-ms-transition:opacity .35s ease-in-out;-o-transition:opacity .35s ease-in-out;transition:opacity .35s ease-in-out}.carousel .control-dots{position:absolute;bottom:0;margin:10px 0;padding:0;text-align:center;width:100%;z-index:1}@media (min-width: 960px){.carousel .control-dots{bottom:0}}.carousel .control-dots .dot{-webkit-transition:opacity .25s ease-in;-moz-transition:opacity .25s ease-in;-ms-transition:opacity .25s ease-in;-o-transition:opacity .25s ease-in;transition:opacity .25s ease-in;opacity:.3;filter:alpha(opacity=30);box-shadow:1px 1px 2px #000000e6;background:#fff;border-radius:50%;width:8px;height:8px;cursor:pointer;display:inline-block;margin:0 8px}.carousel .control-dots .dot.selected,.carousel .control-dots .dot:hover{opacity:1;filter:alpha(opacity=100)}.carousel .carousel-status{position:absolute;top:0;right:0;padding:5px;font-size:10px;text-shadow:1px 1px 1px rgba(0,0,0,.9);color:#fff}.carousel:hover .slide .legend{opacity:1}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;z-index:1001}.carousel-arrow-left{left:10px}.carousel-arrow-right{right:10px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.section-header.page-header{flex-direction:column;align-items:flex-start;gap:10px}.section-header-inner{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.section-header.page-header .section-header-inner{flex-direction:column;align-items:flex-start;gap:5px}.section-header h2{font-size:2rem;font-weight:500;color:#fff;margin:0;white-space:nowrap}.section-header h2 span{color:var(--primary-color)}.section-line{flex:1;min-width:100px;height:1px;background-color:var(--primary-color)}.section-description-text{color:#abb2bf;font-size:1rem;margin:0}.view-all{display:flex;align-items:center;gap:5px;color:#fff;font-size:1rem;transition:color .2s ease}.view-all:hover{color:var(--primary-color)}.view-all span{font-size:1.2rem}@media (max-width: 768px){.section-header{align-items:flex-start;gap:15px}.section-header h2{font-size:1.5rem}.section-line{display:none}}.skill-section{width:100%}.skill-container{margin:0 auto}.skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.skill-box{border:1px solid #abb2bf;padding:0;transition:border-color .2s ease}.skill-box h3{font-size:1rem;font-weight:500;color:#fff;margin:0;padding:8px;border-bottom:1px solid #abb2bf;transition:border-color .2s ease}.skill-box p{font-size:.9rem;color:#abb2bf;line-height:1.8;margin:0;padding:8px}@media (max-width: 768px){.skill-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.skill-grid{grid-template-columns:1fr}}.tech-badge-list{display:flex;flex-wrap:wrap;gap:8px}.tech-badge{display:inline-block;padding:6px 12px;background:rgba(var(--primary-color-rgb, 182, 127, 226),.1);border:1px solid rgba(var(--primary-color-rgb, 182, 127, 226),.3);border-radius:20px;color:var(--primary-color);font-size:.85rem;font-weight:500;transition:all .2s ease}.tech-badge:hover{background:rgba(var(--primary-color-rgb, 182, 127, 226),.2);border-color:var(--primary-color)}.scroll-to-top-btn{position:fixed;bottom:100px;right:30px;width:50px;height:50px;border-radius:50%;background-color:var(--primary-color);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;box-shadow:0 4px 15px #0000004d;transition:background-color .2s ease}.scroll-to-top-btn:hover{background-color:var(--primary-color-dark, var(--primary-color))}.scroll-top-icon{font-size:24px;color:#fff}@media (max-width: 768px){.scroll-to-top-btn{bottom:80px;right:20px;width:45px;height:45px}.scroll-top-icon{font-size:20px}}.toast-notification{position:fixed;top:20px;right:20px;min-width:300px;max-width:400px;background:#1e1e2e;border-radius:12px;box-shadow:0 10px 40px #0006;z-index:1000;overflow:hidden}.toast-success{border:1px solid #4ade80}.toast-error{border:1px solid #f87171}.toast-content{display:flex;align-items:center;gap:12px;padding:16px 40px 16px 16px}.toast-icon{font-size:24px;flex-shrink:0}.toast-error .toast-icon{color:#f87171}.toast-text{color:#fff;font-size:.95rem;font-weight:500}.toast-close-btn{position:absolute;top:8px;right:8px;background:transparent;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.toast-close-btn:hover{color:#fff;background:#ffffff1a}.toast-progress{height:3px;transition:width .1s linear}.progress-error{background:#f87171}@media (max-width: 480px){.toast-notification{left:20px;right:20px;min-width:auto}}.back-link-container{margin-bottom:20px}.back-link-container.sticky{position:sticky;top:80px;z-index:50;padding:10px 0}.back-link{display:inline-flex;align-items:center;gap:8px;color:#abb2bf;text-decoration:none;font-size:.95rem;padding:8px 16px;border-radius:8px;background:#1e1e2ecc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(171,178,191,.2);transition:all .2s ease}.back-link:hover{color:#fff;border-color:var(--primary-color);background:#1e1e2ef2}.back-icon{font-size:18px;transition:transform .2s ease}.back-link:hover .back-icon{transform:translate(-3px)}.back-text{font-weight:500}@media (max-width: 768px){.back-link-container.sticky{top:70px}.back-link{font-size:.9rem;padding:6px 12px}}.social-links{display:flex;gap:15px}.social-links--vertical{flex-direction:column;align-items:center}.social-links--horizontal{flex-direction:row;align-items:center}.social-link{display:flex;align-items:center;gap:8px;color:#abb2bf;text-decoration:none;transition:color .2s ease}.social-link:hover{color:#fff}.social-icon{font-size:1.25rem;transition:transform .2s ease}.social-link:hover .social-icon{transform:scale(1.1)}.social-label{font-size:.9rem}.search-bar-container{position:relative;width:100%;max-width:320px;z-index:100}.search-input-wrapper{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;height:40px;background:var(--background);border:1px solid var(--border-hover);border-radius:6px;transition:all .3s ease}.search-input-wrapper:focus-within{border-color:var(--border-hover);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.search-icon{color:var(--text-secondary);font-size:1rem;flex-shrink:0;line-height:1}.search-input{flex:1;border:none;background:transparent;color:var(--text-primary);font-size:.9rem;outline:none;min-width:0;height:100%}.search-input::placeholder{color:var(--text-secondary);opacity:.6}.search-clear-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;min-height:20px;padding:0;background:var(--border);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;flex-shrink:0}.search-clear-btn:hover{background:var(--primary-color);color:#fff}.search-results{position:absolute;top:calc(100% + 10px);left:0;width:350px;margin:0;padding:.5rem;background:var(--background);border-radius:6px;box-shadow:0 15px 50px #0006;list-style:none;z-index:1001;max-height:350px;-webkit-backdrop-filter:none;backdrop-filter:none;overflow-y:auto}.search-result-item{display:flex;align-items:center;padding:.75rem 1rem;border-radius:4px;cursor:pointer;transition:all .3s ease}.search-result-item:hover,.search-result-item.selected{background:var(--primary)}.search-result-item:hover .search-result-title,.search-result-item.selected .search-result-title{color:var(--button-text)}.search-result-item:hover .search-result-category,.search-result-item.selected .search-result-category{background:#00000026;color:var(--button-text)}.search-result-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.75rem}.search-result-title{color:var(--text-primary);font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease}.search-result-category{flex-shrink:0;padding:.2rem .5rem;background:rgba(var(--primary-rgb),.15);color:var(--primary-color);font-size:.7rem;font-weight:600;border-radius:4px;text-transform:uppercase;transition:all .3s ease}.search-highlight{background:rgba(var(--primary-rgb),.3);color:var(--primary-color);border-radius:2px;padding:0 2px}.search-no-results{position:absolute;top:calc(100% + 10px);left:0;right:0;padding:1rem;background:var(--background);border:1px solid var(--border-hover);border-radius:6px;box-shadow:0 15px 50px #0006;color:var(--text-secondary);font-size:.9rem;text-align:center;z-index:1001}@media (max-width: 900px){.search-bar-container{max-width:280px}.search-results{width:300px}}@media (max-width: 768px){.search-bar-container{max-width:100%;order:3}.search-results{width:100%;left:0;right:0}.search-input-wrapper{padding:.55rem .85rem}.search-input{font-size:.85rem}}.reading-progress-container{position:fixed;top:0;left:0;right:0;height:3px;background:var(--background-secondary);z-index:9999}.reading-progress-bar{height:100%;background:var(--primary);transform-origin:left;will-change:transform}.bookmark-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--text-secondary);transition:color .3s ease;padding:.5rem;border-radius:50%}.bookmark-btn:hover,.bookmark-btn.active,.bookmark-btn.active .bookmark-icon.filled{color:var(--primary)}.bookmark-btn.small{padding:.35rem}.bookmark-btn.small .bookmark-icon{font-size:1rem}.bookmark-btn.medium .bookmark-icon{font-size:1.25rem}.bookmark-btn.large{padding:.65rem}.bookmark-btn.large .bookmark-icon{font-size:1.5rem}.bookmark-icon.filled{animation:bookmarkPop .3s ease}@keyframes bookmarkPop{0%{transform:scale(.8)}50%{transform:scale(1.2)}to{transform:scale(1)}}.tooltip-wrapper{position:relative;display:inline-flex}.tooltip-text{visibility:hidden;opacity:0;position:absolute;padding:6px 12px;background:var(--background-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.75rem;font-weight:500;white-space:nowrap;z-index:9999;pointer-events:none;transition:opacity .2s ease,visibility .2s ease,transform .2s ease;box-shadow:0 4px 12px #00000026}.tooltip-text:before{content:"";position:absolute;border:6px solid transparent}.tooltip-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(-4px)}.tooltip-bottom:before{bottom:100%;left:50%;transform:translate(-50%);border-bottom-color:var(--border)}.tooltip-top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px)}.tooltip-top:before{top:100%;left:50%;transform:translate(-50%);border-top-color:var(--border)}.tooltip-left{right:calc(100% + 8px);top:50%;transform:translateY(-50%) translate(4px)}.tooltip-left:before{left:100%;top:50%;transform:translateY(-50%);border-left-color:var(--border)}.tooltip-right{left:calc(100% + 8px);top:50%;transform:translateY(-50%) translate(-4px)}.tooltip-right:before{right:100%;top:50%;transform:translateY(-50%);border-right-color:var(--border)}.tooltip-wrapper:hover .tooltip-text{visibility:visible;opacity:1}.tooltip-wrapper:hover .tooltip-bottom,.tooltip-wrapper:hover .tooltip-top{transform:translate(-50%) translateY(0)}.tooltip-wrapper:hover .tooltip-left,.tooltip-wrapper:hover .tooltip-right{transform:translateY(-50%) translate(0)}.command-palette-trigger{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;padding:.85rem 1.75rem;background:var(--background-hover);border:1px solid var(--border);border-radius:50px;color:var(--text-secondary);font-size:.95rem;cursor:pointer;transition:all .2s ease;z-index:997;box-shadow:0 0 28px #00000073}.command-palette-trigger:hover{border-color:var(--primary);color:var(--text);transform:translate(-50%) translateY(-2px)}.command-palette-trigger svg{font-size:1.1rem;color:var(--primary)}.trigger-text{color:var(--text-muted)}.trigger-shortcut{display:flex;align-items:center;gap:2px;padding:.2rem .5rem;background:var(--background);border:1px solid var(--border);border-radius:6px;font-size:.75rem;font-family:inherit;color:var(--text-secondary);margin-left:.25rem}.trigger-shortcut span{font-size:.85rem}.command-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998}.command-palette{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)!important;width:90%;max-width:600px;background:var(--background-card);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 60px #0006;z-index:9999;overflow:hidden}.command-palette-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.command-palette-header .search-icon{font-size:1.25rem;color:var(--primary);flex-shrink:0}.command-input{flex:1;background:transparent;border:none;outline:none;font-size:1rem;color:var(--text);font-family:inherit}.command-input::placeholder{color:var(--text-muted)}.command-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.command-close:hover{background:#ff64641a;border-color:#ff6b6b;color:#ff6b6b}.command-palette-results{max-height:350px;overflow-y:auto;padding:.5rem}.command-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;border-radius:10px;color:var(--text);cursor:pointer;transition:all .15s ease;text-align:left}.command-item:hover,.command-item.selected{background:rgba(var(--primary-rgb),.15)}.command-item.selected{outline:2px solid var(--primary);outline-offset:-2px}.command-item-icon{font-size:1.25rem;color:var(--primary);flex-shrink:0}.command-item-content{flex:1;display:flex;flex-direction:column;gap:.15rem;overflow:hidden}.command-item-title{font-size:.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-item-subtitle{font-size:.8rem;color:var(--text-secondary)}.command-item-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);background:var(--background);padding:.25rem .5rem;border-radius:4px}.command-item-arrow{font-size:1rem;color:var(--text-muted);opacity:0;transition:all .15s ease}.command-item:hover .command-item-arrow,.command-item.selected .command-item-arrow{opacity:1;color:var(--primary)}.command-empty{padding:2rem;text-align:center;color:var(--text-secondary)}.command-palette-footer{display:flex;justify-content:center;gap:1.5rem;padding:.75rem 1rem;border-top:1px solid var(--border);background:var(--background)}.shortcut-hint{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--text-muted)}.shortcut-hint kbd{padding:.2rem .4rem;background:var(--background-secondary);border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:.7rem}@media (max-width: 768px){.command-palette{width:95%;max-height:70vh}.command-palette-trigger{bottom:20px;padding:.6rem 1rem;font-size:.85rem}.command-palette-trigger .trigger-text{display:none}.command-palette-footer{flex-wrap:wrap;gap:1rem}}@media (max-width: 480px){.command-palette-trigger .trigger-shortcut{display:none}}.command-palette-results::-webkit-scrollbar{width:6px}.command-palette-results::-webkit-scrollbar-track{background:transparent}.command-palette-results::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.command-palette-results::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.page-transition{width:100%;min-height:100vh}.tech-stack-filter{width:100%;margin-bottom:1.5rem;position:relative}.selected-techs-container{background:var(--background-secondary);border:1px solid var(--border);border-radius:10px;padding:1rem;margin-bottom:1rem;overflow:hidden}.selected-techs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.filter-label{display:flex;align-items:center;gap:.5rem;color:var(--text);font-size:.9rem;font-weight:500}.filter-label .filter-icon{color:var(--primary);font-size:1.1rem}.clear-filters-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:6px 14px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .3s ease}.clear-filters-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.selected-techs-list{display:flex;flex-wrap:wrap;gap:.5rem}.selected-tech-tag{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);padding:6px 12px;border-radius:6px;border:none;font-size:.85rem;cursor:pointer;transition:all .3s ease}.selected-tech-tag:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.selected-tech-tag .remove-icon{font-size:1rem;opacity:.9}.tech-filter-toggle-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;background:var(--background-secondary);border:1px solid var(--border);color:var(--text);padding:12px 20px;border-radius:10px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.tech-filter-toggle-btn:hover{border-color:var(--primary);background:var(--background-hover);color:var(--primary)}.tech-filter-toggle-btn .toggle-icon{font-size:1.2rem;color:var(--primary)}.tech-filter-toggle-btn .badge{background:var(--primary-light);color:var(--primary);padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600;margin-left:auto}.add-more-tech-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;background:transparent;border:1px dashed var(--border);color:var(--text-secondary);padding:12px 20px;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.add-more-tech-btn:hover{border-color:var(--primary);border-style:solid;background:var(--background-hover);color:var(--primary)}.add-more-tech-btn .toggle-icon{font-size:1.1rem;color:var(--primary)}.tech-filter-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--background-card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;z-index:100;box-shadow:0 20px 50px #0006;max-height:400px;overflow-y:auto}.tech-filter-panel::-webkit-scrollbar{width:6px}.tech-filter-panel::-webkit-scrollbar-track{background:var(--background-secondary);border-radius:3px}.tech-filter-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.tech-filter-panel::-webkit-scrollbar-thumb:hover{background:var(--primary)}.tech-filter-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.tech-filter-panel-header h3{color:var(--text);font-size:1.1rem;font-weight:600;margin:0}.close-panel-btn{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:6px}.close-panel-btn:hover{color:var(--primary);background:var(--primary-light)}.tech-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem}.tech-filter-item{background:var(--background-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:8px 12px;border-radius:8px;font-size:.85rem;cursor:pointer;transition:all .3s ease;text-align:center}.tech-filter-item:hover{border-color:var(--primary);color:var(--text);background:var(--background-hover)}.tech-filter-item.active{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);border-color:transparent;font-weight:500}@media (max-width: 768px){.tech-filter-panel{max-height:300px}.tech-filter-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.4rem}.tech-filter-item{padding:6px 10px;font-size:.8rem}.selected-tech-tag{padding:5px 10px;font-size:.8rem}}.qr-share-button{display:inline-flex;align-items:center;gap:.5rem;padding:12px 24px;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.qr-share-button:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light);transform:translateY(-2px)}.qr-share-button .qr-icon{font-size:1.25rem}.qr-btn-small{padding:8px 16px;font-size:.85rem}.qr-btn-large{padding:14px 28px;font-size:1rem}.qr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.qr-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)!important;background:var(--background-card);border:1px solid var(--border);border-radius:16px;padding:2rem;z-index:1000;max-width:450px;width:90%;box-shadow:0 20px 60px #00000080}.qr-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.qr-modal-header h3{color:var(--text);font-size:1.4rem;font-weight:600;margin:0}.qr-modal-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.75rem;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:6px}.qr-modal-close:hover{color:var(--primary);background:var(--primary-light);transform:rotate(90deg)}.qr-modal-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.qr-code-container{background:#fff;padding:1.5rem;border-radius:12px;border:2px solid var(--border);box-shadow:0 4px 12px #0000001a}.qr-code-svg{display:block}.qr-description{color:var(--text-secondary);font-size:.95rem;text-align:center;margin:0}.qr-url-container{display:flex;width:100%;gap:.5rem;align-items:center}.qr-url-input{flex:1;background:var(--background-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:10px 14px;border-radius:8px;font-size:.85rem;font-family:Fira Code,monospace;outline:none}.copy-url-btn{background:var(--background-secondary);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.35rem;white-space:nowrap}.copy-url-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.copy-url-btn.copied{background:#22c55e;border-color:#22c55e;color:#fff}.qr-modal-actions{display:flex;gap:.75rem;width:100%}.qr-download-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);border:none;padding:12px 20px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.qr-download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.4)}@media (max-width: 768px){.qr-modal{padding:1.5rem;max-width:95%}.qr-modal-header h3{font-size:1.2rem}.qr-code-container{padding:1rem}.qr-url-container{flex-direction:column}.copy-url-btn,.qr-url-input{width:100%}}.comparison-trigger-btn{display:inline-flex;align-items:center;gap:.5rem;padding:8px 20px;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .3s ease}.comparison-trigger-btn:hover{border-color:var(--primary);color:var(--text);background:var(--background-hover)}.comparison-trigger-btn .compare-icon{font-size:1.2rem;color:var(--primary)}.comparison-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.comparison-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)!important;background:var(--background-card);border:1px solid var(--border);border-radius:16px;padding:2rem;z-index:1000;max-width:900px;width:95%;max-height:90vh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;box-shadow:0 20px 60px #00000080}.comparison-modal::-webkit-scrollbar{width:8px}.comparison-modal::-webkit-scrollbar-track{background:var(--background-secondary);border-radius:4px}.comparison-modal::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}.comparison-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.comparison-modal-header h2{display:flex;align-items:center;gap:.75rem;color:var(--text);font-size:1.75rem;font-weight:600;margin:0}.comparison-modal-header .header-icon{color:var(--primary);font-size:2rem}.comparison-modal-close{background:transparent;border:none;color:var(--text-secondary);font-size:2rem;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:8px}.comparison-modal-close:hover{color:var(--primary);background:var(--primary-light);transform:rotate(90deg)}.project-selectors{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem;width:100%;box-sizing:border-box}.project-selector{min-height:180px;min-width:0;box-sizing:border-box}.selected-project-card{position:relative;background:linear-gradient(135deg,var(--background-secondary),var(--background));border:2px solid transparent;background-clip:padding-box;border-radius:12px;padding:1.25rem;text-align:center;height:100%;display:flex;flex-direction:column;align-items:center;gap:.75rem;box-sizing:border-box;overflow:hidden;box-shadow:0 4px 16px #0003,inset 0 0 0 2px var(--primary);transition:all .3s ease}.selected-project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;padding:2px;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.selected-project-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(var(--primary-rgb),.3),inset 0 0 0 2px var(--primary)}.remove-selection-btn{position:absolute;top:10px;right:10px;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:1.2rem;z-index:10;opacity:.8}.remove-selection-btn:hover{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:transparent;transform:rotate(90deg) scale(1.1);opacity:1;box-shadow:0 4px 12px #ef444466}.project-thumbnail{width:100%;height:100px;border-radius:10px;overflow:hidden;border:1px solid var(--border);box-shadow:0 4px 12px #00000026;position:relative;transition:all .3s ease}.project-thumbnail:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 50%,rgba(0,0,0,.2));pointer-events:none}.project-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.selected-project-card:hover .project-thumbnail img{transform:scale(1.05)}.selected-project-card h4{color:var(--text);font-size:1.05rem;margin:0;font-weight:600;word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.project-category{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);font-size:.8rem;font-weight:500;padding:5px 12px;border-radius:20px;margin:0;box-shadow:0 2px 8px rgba(var(--primary-rgb),.3)}.project-dropdown{background:var(--background-secondary);border:2px dashed var(--border);border-radius:12px;padding:1.25rem;height:100%;display:flex;flex-direction:column;gap:.75rem;box-sizing:border-box;transition:all .3s ease}.project-dropdown:hover{border-color:var(--primary);background:var(--background-hover)}.project-dropdown label{color:var(--text);font-size:.95rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.project-dropdown label:before{content:"→";color:var(--primary);font-size:1.2rem}.project-dropdown select{background:var(--background);border:1px solid var(--border);width:100%;box-sizing:border-box;color:var(--text);padding:12px 14px;border-radius:8px;font-size:.9rem;cursor:pointer;outline:none;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.project-dropdown select:hover,.project-dropdown select:focus{border-color:var(--primary);box-shadow:0 4px 12px rgba(var(--primary-rgb),.2);transform:translateY(-1px)}.comparison-table{background:var(--background-secondary);border:1px solid var(--border);border-radius:12px;overflow:hidden}.comparison-header{display:grid;grid-template-columns:1.5fr 2fr 4px 2fr;gap:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--primary-light),transparent);border-bottom:1px solid var(--border);font-weight:600;color:var(--text)}.comparison-label-header{font-size:.95rem}.comparison-value-header{font-size:.9rem;text-align:center}.comparison-divider-header{width:2px;background:var(--border)}.comparison-row{display:grid;grid-template-columns:1.5fr 2fr 4px 2fr;gap:1rem;padding:1.25rem 1.5rem;align-items:center;border-bottom:1px solid var(--border);transition:background .3s ease}.comparison-row:last-child{border-bottom:none}.comparison-row:hover{background:var(--background-hover)}.comparison-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.comparison-value{color:var(--text);font-size:.9rem;text-align:center;display:flex;justify-content:center;align-items:center}.comparison-divider{width:2px;height:100%;background:var(--border);min-height:20px}.check-icon{color:#22c55e;font-size:1.5rem}.cross-icon{color:#ef4444;font-size:1.5rem}.tech-stack-badges{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center}.tech-badge-small{background:var(--primary-light);color:var(--primary);padding:4px 8px;border-radius:4px;font-size:.75rem;border:1px solid rgba(var(--primary-rgb),.2)}.tech-more{background:var(--background);color:var(--text-secondary);padding:4px 8px;border-radius:4px;font-size:.75rem;border:1px solid var(--border)}.comparison-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.5rem;background:var(--background)}.view-project-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:12px 20px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);text-decoration:none;border-radius:8px;font-size:.9rem;font-weight:500;transition:all .3s ease}.view-project-link:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.4)}.comparison-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;gap:1rem;text-align:center}.comparison-empty .empty-icon{font-size:4rem;color:var(--text-secondary);opacity:.5}.comparison-empty p{color:var(--text-secondary);font-size:1.1rem;margin:0}@media (max-width: 768px){.comparison-modal{padding:1.5rem;width:98%}.comparison-modal-header h2{font-size:1.4rem}.project-selectors{grid-template-columns:1fr;gap:1rem}.comparison-table{overflow-x:auto}.comparison-row,.comparison-header{grid-template-columns:1fr;gap:.5rem}.comparison-divider,.comparison-divider-header{display:none}.comparison-value,.comparison-value-header{text-align:left;justify-content:flex-start}.comparison-actions{grid-template-columns:1fr}}.webshare-button{display:inline-flex;align-items:center;gap:.5rem;padding:12px 24px;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.webshare-button:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light);transform:translateY(-2px)}.webshare-icon{font-size:1.2rem;transition:transform .3s ease}.webshare-button:hover .webshare-icon{transform:rotate(15deg)}.webshare-btn-small{padding:6px 14px;font-size:.85rem}.webshare-btn-small .webshare-icon{font-size:1rem}.webshare-btn-large{padding:12px 24px;font-size:1.05rem}.webshare-btn-large .webshare-icon{font-size:1.4rem}@media (max-width: 768px){.webshare-button span{display:none}.webshare-button{padding:10px}.webshare-icon{font-size:1.3rem}}.pwa-banner{position:fixed;left:50%;transform:translate(-50%)!important;background:var(--background-card);border:1px solid var(--border);border-radius:12px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:1rem;z-index:9999;box-shadow:0 10px 40px #0000004d;max-width:90%;width:420px}.install-banner{bottom:20px}.update-banner{top:20px}.pwa-banner-content{display:flex;align-items:center;gap:12px}.pwa-icon{font-size:2rem;color:var(--primary);flex-shrink:0}.pwa-text{display:flex;flex-direction:column;gap:2px}.pwa-text strong{color:var(--text);font-size:.95rem}.pwa-text span{color:var(--text-secondary);font-size:.85rem}.pwa-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pwa-btn{border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:500}.pwa-btn.install,.pwa-btn.update{padding:10px 20px;background:var(--primary);color:var(--button-text);font-size:.9rem}.pwa-btn.install:hover,.pwa-btn.update:hover{filter:brightness(1.1);transform:translateY(-2px)}.pwa-btn.dismiss{padding:8px;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.pwa-btn.dismiss:hover{color:var(--text);background:var(--background-secondary)}@media (max-width: 480px){.pwa-banner{width:calc(100% - 32px);padding:14px 16px;flex-wrap:wrap;gap:12px}.pwa-banner-content{flex:1;min-width:0}.pwa-text strong{font-size:.9rem}.pwa-text span{font-size:.8rem}.pwa-icon{font-size:1.75rem}}.skills-radar-container{background:var(--background-card);border:1px solid var(--border);padding:2rem;margin-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}.radar-left{display:flex;flex-direction:column}.radar-header{text-align:left;margin-bottom:1.5rem}.radar-header h3{font-size:1.5rem;color:var(--text);margin:0 0 .5rem}.radar-header p{color:var(--text-secondary);font-size:.95rem;margin:0}.radar-categories{display:flex;justify-content:flex-start;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.radar-category-btn{padding:8px 20px;background:transparent;border:1px solid var(--border);border-radius:20px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.radar-category-btn:hover{border-color:var(--category-color);color:var(--category-color)}.radar-category-btn.active{background:var(--category-color);border-color:var(--category-color);color:#fff}.radar-chart-wrapper{width:100%;min-height:350px}.radar-tooltip{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:8px 12px;box-shadow:0 4px 12px #0003}.radar-tooltip-label{color:var(--text);font-weight:600;margin:0 0 4px;font-size:.9rem}.radar-tooltip-value{color:var(--primary);font-weight:700;margin:0;font-size:1.1rem}.radar-legend{display:flex;flex-direction:column;gap:.75rem}.radar-legend-item{display:flex;align-items:center;gap:.75rem}.legend-name{font-size:.85rem;color:var(--text-secondary);min-width:85px}.legend-bar-container{flex:1;height:6px;background:var(--background-secondary);border-radius:3px;overflow:hidden}.legend-bar{height:100%;border-radius:3px;transition:width .8s ease}.legend-value{font-size:.85rem;font-weight:600;color:var(--text);min-width:40px;text-align:right}@media (max-width: 900px){.skills-radar-container{grid-template-columns:1fr;gap:1.5rem}.radar-header{text-align:center}.radar-categories{justify-content:center}.radar-chart-wrapper{min-height:300px}}@media (max-width: 768px){.skills-radar-container{padding:1.5rem}.radar-header h3{font-size:1.25rem}.radar-categories{gap:.5rem}.radar-category-btn{padding:6px 14px;font-size:.8rem}.radar-chart-wrapper{min-height:280px}.radar-legend{gap:.6rem}.legend-name{min-width:70px;font-size:.8rem}.legend-value{font-size:.8rem;min-width:35px}}@media (max-width: 480px){.skills-radar-container{padding:1rem;margin-top:1.5rem}.radar-chart-wrapper{min-height:250px}.radar-category-btn{padding:5px 10px;font-size:.75rem}.legend-name{min-width:60px}}.radar-category-btn{padding:5px 12px;font-size:.75rem}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:99999;overflow:hidden}.confetti-particle{position:absolute;top:0}.center-celebration{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:99999;padding:40px 60px;background:linear-gradient(135deg,#1a1a2ef2,#16213ef2);border:2px solid var(--primary-color, #10b981);border-radius:24px;box-shadow:0 0 60px #10b9814d,0 0 100px #10b9811a,0 20px 60px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.celebration-icon{font-size:4rem;line-height:1}.celebration-text{font-size:2rem;font-weight:700;color:#fff;text-align:center;background:linear-gradient(135deg,#10b981,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.celebration-subtext{font-size:1rem;color:#ffffffb3;text-align:center}.matrix-rain{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;z-index:99998;pointer-events:none;overflow:hidden}.matrix-column{position:absolute;top:-100%;display:flex;flex-direction:column;animation:matrix-fall linear infinite;font-family:Fira Code,monospace;font-size:14px;line-height:1.2}.matrix-column span{color:#10b981;text-shadow:0 0 10px #10b981;opacity:0;animation:matrix-glow .5s ease forwards}.matrix-column span:first-child{color:#fff;text-shadow:0 0 15px #10b981,0 0 30px #10b981}@keyframes matrix-fall{0%{transform:translateY(0)}to{transform:translateY(200%)}}@keyframes matrix-glow{0%{opacity:0}to{opacity:1}}@media (max-width: 480px){.center-celebration{padding:30px 40px;width:90%;max-width:320px}.celebration-icon{font-size:3rem}.celebration-text{font-size:1.5rem}.celebration-subtext{font-size:.875rem}}.particles-navbar{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,-2px)}40%{transform:translate(2px,2px)}60%{transform:translate(-2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}@keyframes color-change{0%,to{color:var(--text)}50%{color:var(--primary)}}@keyframes glitch-lines{0%,to{clip:rect(0,900px,0,0)}20%{clip:rect(2px,900px,10px,0)}40%{clip:rect(8px,900px,15px,0)}60%{clip:rect(4px,900px,20px,0)}80%{clip:rect(6px,900px,25px,0)}}.navbar-left .navbar-logo{position:relative;font-family:Fira Code,monospace;font-size:2.5rem;text-transform:uppercase;animation:glitch 1s infinite alternate ease-in-out,color-change 2s infinite alternate ease-in-out;color:var(--text);overflow:hidden}.navbar-left .navbar-logo:before,.navbar-left .navbar-logo:after{content:"Hammas";position:absolute;top:0;left:0;width:100%;height:100%;background:inherit;color:inherit;overflow:hidden}.navbar-left .navbar-logo:before{left:2px;text-shadow:-2px 0 var(--primary-hover);animation:glitch-lines 1.5s infinite linear alternate-reverse}.navbar-left .navbar-logo:after{left:-2px;text-shadow:-2px 0 var(--text);animation:glitch-lines 1.2s infinite linear alternate-reverse}.navbar{display:flex;align-items:center;padding:15px 30px;background:var(--background);position:sticky;height:70px;top:0;z-index:999;transition:background-color .3s ease}.navbar-main{display:flex;justify-content:space-between;padding:.25rem 1.5rem;align-items:center;width:100%}.navbar-right .navbar-menu{display:flex;gap:15px;list-style:none;margin:0;padding:0}.navbar-right .navbar-menu li{font-family:Fira Code,monospace;font-size:1rem;padding:0 .5rem}.navbar-right .navbar-menu li a{color:var(--text-muted);text-decoration:none;transition:color .3s ease-in-out}.navbar-right .navbar-menu li a:hover{color:var(--primary-hover)}.navbar-right .navbar-menu li a.active-link{color:var(--primary)}.navbar-right{display:flex;align-items:center;flex-direction:row;gap:0}.icons-main{display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:visible}.icons-main div{display:flex;flex-direction:columns}.navbar-icons{flex-direction:column;overflow:visible}.navbar-icons a{margin:.25rem 0;font-size:1.5rem}.navbar-each-icon{color:var(--text-muted);transition:color .3s ease-in-out;animation:iconBounce 1s ease-in-out}.navbar-each-icon:hover{color:var(--primary)}.line{width:1.5px;height:450px;background-color:var(--text-muted);margin-bottom:.5rem;animation:lineAnimation 1s cubic-bezier(.4,0,.2,1) forwards}.menu-toggle{display:none;cursor:pointer}.icons-mobile{display:none}@media (max-width: 768px){.navbar{flex-direction:column;align-items:flex-start;padding:10px;height:60px;overflow:hidden;transition:height .3s ease-in-out}.navbar-main{flex-direction:column;align-items:flex-start;width:100%;padding:0}.navbar-right{width:100%;display:none;flex-direction:column;align-items:flex-start;opacity:0;transform:translateY(-20px);transition:opacity .3s ease-in-out,transform .3s ease-in-out}.navbar-right.open{display:flex;opacity:1;transform:translateY(0);padding:1rem}.navbar-right.open .navbar-menu{flex-direction:column;align-items:flex-start;gap:10px;width:100%}.navbar-right .navbar-menu li{padding:0}.navbar-right.open li a{font-size:1.25rem;padding:10px 0;width:100%;display:block;color:#8b8b8b}.menu-toggle{display:block;position:absolute;top:20px;right:20px}.icons-main{flex-direction:row;justify-content:flex-start;gap:10px;margin-top:10px;display:none}.icons-mobile{display:flex;justify-content:center;align-items:center;width:100%}.icons-mobile a{font-size:2rem;padding:.5rem}.navbar.open{height:100vh}.navbar.open .navbar-right{overflow-y:auto;-webkit-overflow-scrolling:touch}.navbar-each-icon{animation:none}body.menu-open{overflow:hidden}}@keyframes lineAnimation{0%{height:0px}25%{height:500px}50%{height:420px}75%{height:480px}to{height:450px}}@keyframes iconBounce{0%,to{transform:translateY(0)}25%{transform:translateY(50px)}50%{transform:translateY(0)}75%{transform:translateY(20px)}}.navbar-bookmark-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-left:.5rem;padding:8px 14px;background:var(--background-secondary);border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:all .3s ease}.navbar-bookmark-link:hover{border-color:var(--primary);background:var(--background-hover)}.navbar-bookmark-link .bookmark-icon{font-size:1.1rem;color:var(--primary)}.navbar-bookmark-link .bookmark-text{font-size:.9rem;color:var(--text-secondary);transition:color .3s ease}.navbar-bookmark-link-mobile{display:none}.theme-selector{position:relative;margin-left:.5rem}.theme-mobile{display:none}.theme-toggle-btn{background:var(--background-secondary);border:1px solid var(--border);border-radius:8px;padding:8px 14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.theme-toggle-btn:hover{border-color:var(--primary);background:var(--background-hover)}.theme-icon{font-size:1.25rem;color:var(--primary);transition:color .3s ease,transform .3s ease}.theme-toggle-btn:hover .theme-icon{transform:rotate(15deg)}.theme-color-indicator{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.3);transition:transform .3s ease,box-shadow .3s ease}.theme-toggle-btn:hover .theme-color-indicator{transform:scale(1.1);box-shadow:0 0 8px currentColor}.theme-btn-text{font-size:.85rem;color:var(--text-secondary);font-weight:500;transition:color .3s ease}.theme-toggle-btn:hover .theme-btn-text{color:var(--text)}.theme-panel{position:absolute;top:calc(100% + 12px);right:0;background:var(--background-card);border:1px solid var(--border);border-radius:16px;padding:0;min-width:280px;max-height:400px;overflow:hidden;z-index:1000;box-shadow:0 20px 50px #0006}.theme-panel-header{display:flex;align-items:center;gap:10px;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--primary-light),transparent);border-bottom:1px solid var(--border);font-size:.95rem;font-weight:600;color:var(--text)}.theme-count{font-size:.75rem;font-weight:500;color:var(--primary);background:var(--primary-light);padding:2px 8px;border-radius:12px;margin-left:auto}.theme-panel-icon{font-size:1.25rem;color:var(--primary)}.theme-colors{display:flex;flex-direction:column;max-height:320px;overflow-y:auto;padding:.5rem}.theme-colors::-webkit-scrollbar{width:6px}.theme-colors::-webkit-scrollbar-track{background:var(--background-secondary)}.theme-colors::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.theme-colors::-webkit-scrollbar-thumb:hover{background:var(--primary)}.theme-color-btn{display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.theme-color-btn:hover{background:var(--background-hover)}.theme-color-btn.active{background:var(--primary-light)}.theme-color-preview{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px #0003;transition:transform .2s ease,box-shadow .2s ease}.theme-color-btn:hover .theme-color-preview{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.theme-color-name{font-size:.9rem;color:var(--text-secondary);font-weight:500;transition:color .2s ease}.theme-color-btn:hover .theme-color-name{color:var(--text)}.theme-color-btn.active .theme-color-name{color:var(--primary);font-weight:600}.theme-check-icon{color:#fff;font-size:.75rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.theme-color-btn[title=Dark] .theme-check-icon,.theme-color-btn[title=Slate] .theme-check-icon{color:#1a1a1a;filter:none}@media (max-width: 768px){.theme-selector.theme-desktop,.navbar-bookmark-link{display:none}.navbar-bookmark-link-mobile{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:12px 16px;background:var(--background-secondary);border:1px solid var(--border);border-radius:10px;text-decoration:none;transition:all .3s ease;margin:1rem 0 0}.navbar-bookmark-link-mobile:hover{border-color:var(--primary);background:var(--background-hover)}.navbar-bookmark-link-mobile .bookmark-icon{font-size:1.1rem;color:var(--primary)}.navbar-bookmark-link-mobile .bookmark-text{font-size:1rem;font-weight:500;color:var(--text);transition:color .3s ease}.theme-accordion.theme-mobile{display:block;width:100%;margin:.5rem 0 1rem}}.theme-accordion{display:none;width:100%}.theme-accordion-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;background:var(--background-secondary);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .3s ease}.theme-accordion-header:hover{border-color:var(--primary);background:var(--background-hover)}.theme-accordion-left{display:flex;align-items:center;gap:10px}.theme-accordion-title{font-size:1rem;font-weight:500;color:var(--text)}.theme-current-name{font-size:.85rem;color:var(--primary);font-weight:500}.theme-accordion-arrow{font-size:.75rem;color:var(--text-secondary);transition:transform .3s ease}.theme-accordion-arrow.open{transform:rotate(180deg)}.theme-accordion-content{overflow:hidden;margin-top:8px;border-radius:10px;background:var(--background-secondary);border:1px solid var(--border)}.theme-accordion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;max-height:200px;overflow-y:auto;-webkit-overflow-scrolling:touch}.theme-accordion-grid::-webkit-scrollbar{width:4px}.theme-accordion-grid::-webkit-scrollbar-track{background:var(--background);border-radius:4px}.theme-accordion-grid::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}.theme-accordion-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;background:var(--background);border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.theme-accordion-item:hover{border-color:var(--border);background:var(--background-hover)}.theme-accordion-item.active{border-color:var(--primary);background:var(--primary-light)}.theme-accordion-item .theme-color-preview{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0003}.theme-item-name{font-size:.7rem;color:var(--text-secondary);font-weight:500;text-align:center}.theme-accordion-item.active .theme-item-name{color:var(--primary)}@keyframes slideIn{0%{opacity:0;transform:translate(50%) translateY(-15px) scale(.95)}to{opacity:1;transform:translate(50%) translateY(0) scale(1)}}.footer-outer{padding:40px 7rem 15px!important;border-top:2px solid var(--border)!important;position:relative;transition:border-color .3s ease}.footer-banner-content,.footer-banner-message,.footer-copyright{opacity:0;transition:opacity .8s ease,transform .8s ease}.footer-banner-content.visible,.footer-banner-message.visible{opacity:1;transform:translate(0)}.footer-copyright.visible{opacity:1;transform:translateY(0)}.footer-banner-content{transform:translate(-100px)}.footer-banner-message{transform:translate(100px)}.footer-copyright{transform:translateY(20px)}.footer-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;color:var(--text);gap:20px;transition:color .3s ease}.footer-section-line{width:500px;height:1.5px;background-color:var(--primary);margin-left:10px;transition:background-color .3s ease}.footer-banner-content{width:50%;display:flex;align-items:flex-start;flex-direction:column;text-align:start}.footer-highlight{color:var(--primary-hover);transition:color .3s ease}.footer-banner p{margin-bottom:1.75rem;font-size:1.125rem;color:var(--text-secondary);text-align:start;transition:color .3s ease}.footer-each-icon{color:var(--text-secondary);margin-right:1rem;font-size:1.25rem;transition:color .3s ease-in-out}.footer-each-icon:hover{color:var(--primary)}.footer-contacts-outer{display:flex;gap:.5rem}.footer-contacts-outer a{text-decoration:none;color:var(--text-secondary);font-size:1rem;transition:color .3s ease}.footer-contacts-outer a:hover{color:var(--primary)}.footer-banner-content-inner{display:flex;justify-content:center;align-items:center;font-size:1rem}.footer-banner-content-inner p{margin-right:1.5rem;font-size:1.5rem;font-weight:600;transition:color .3s ease-in-out}.footer-banner-content-inner p:hover{color:var(--text)}.footer-banner-content-inner a{text-decoration:none}.footer-copyright p{text-align:center;color:var(--text-secondary);font-weight:500;margin-top:.5rem;-webkit-user-select:none;user-select:none;transition:color .3s ease}@media (max-width: 768px){.footer-outer{padding:1rem .25rem!important}.footer-banner-content-inner{flex-direction:column}.footer-banner-content{width:100%;align-items:center}.footer-banner{flex-direction:column;padding:1rem .25rem}.footer-outer{padding:1rem .25rem}.footer-banner-content,.footer-banner-message{max-width:100%}.footer-banner-message{width:100%;padding:0}.footer-section-line{display:none}.footer-banner-content-inner p{font-size:1.25rem}}.whatsapp-icon{position:fixed;right:20px;bottom:20px;display:flex;align-items:center;justify-content:center;width:55px;height:55px;background:linear-gradient(135deg,var(--primary),var(--secondary));border-radius:50%;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .3s ease;border:none;padding:12px;z-index:100;box-shadow:0 2px 8px rgba(var(--primary-rgb),.25)}.whatsapp-icon:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(var(--primary-rgb),.35)}.whatsapp-icon-style{color:var(--button-text)!important;font-size:1.75rem;transition:color .3s ease}@media (max-width: 768px){.whatsapp-icon{right:15px;bottom:20px;width:45px;height:45px;padding:10px}.whatsapp-icon-style{font-size:1.25rem}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s linear .3s;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-backdrop.active{opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s linear 0s}.modal-content{background:var(--background-card);color:var(--text-secondary);padding:20px;border-radius:8px;max-width:800px;width:90%;position:relative;padding-top:3rem;max-height:80vh;overflow-y:auto;opacity:0;transform:translateY(-50px);transition:opacity .3s ease,transform .3s ease,background-color .3s ease,color .3s ease}.modal-backdrop.active .modal-content{opacity:1;transform:translateY(0)}.modal-close-button{position:absolute;top:10px;right:10px;background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer;transition:color .3s ease,transform .3s ease}.modal-close-button:hover{color:var(--primary);transform:scale(1.1)}.lazy-load-image-background.blur{filter:blur(15px)}.lazy-load-image-background.blur.lazy-load-image-loaded{filter:blur(0);transition:filter .3s}.lazy-load-image-background.blur>img{opacity:0}.lazy-load-image-background.blur.lazy-load-image-loaded>img{opacity:1;transition:opacity .3s}.image-container{position:relative;width:100%;height:100%;overflow:hidden;background:var(--background-secondary);border-radius:0}.image-skeleton{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--background-hover) 0%,var(--background-secondary) 50%,var(--background-hover) 100%);overflow:hidden;z-index:1}.skeleton-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.lazy-image-wrapper,.lazy-image-wrapper span{width:100%!important;height:100%!important;display:block!important}.lazy-image{width:100%!important;height:100%!important;object-fit:cover;opacity:0;transition:opacity .3s ease,transform .5s ease}.lazy-image.loaded{opacity:1}.blur-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#abb2bf;transition:opacity .3s ease}.error-placeholder{color:var(--text);background-color:var(--background-hover);display:flex;justify-content:center;align-items:center;height:100%;font-size:.9rem}.home-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;color:var(--text);padding:40px;gap:20px;overflow:hidden;position:relative}.particles-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;background-color:color-mix(in srgb,var(--background) 20%,transparent)}.home-banner-content{width:50%;display:flex;align-items:self-start;flex-direction:column;padding:.5rem 2.5rem;position:relative;z-index:1}.home-banner-image{position:relative;width:40%;display:flex;justify-content:center;align-items:center;flex-direction:column;z-index:1}.home-banner h1{font-size:2.5rem;font-weight:700;line-height:1.2}.home-banner .highlight,.home-banner .highlight-axthtech{color:var(--primary)}.home-banner .highlight-axthtech.second{margin-left:.5rem;border-bottom:none}.home-banner p{margin-top:20px;font-size:1.125rem;color:var(--text-secondary)}.contact-button{margin-top:20px;padding:10px 20px;border:2px solid var(--primary);background-color:transparent;color:var(--text);cursor:pointer;font-size:1rem;transition:background-color .3s,color .3s,border-color .3s,transform .3s,box-shadow .3s}.contact-button:hover{background-color:var(--primary);color:var(--button-text);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.3)}.banner-image-div{display:flex;justify-content:center;align-items:center}.home-banner-image img{width:100%;border-radius:8px;z-index:1}.working-status{border:2px solid var(--border);padding:3px 5px;font-size:.875rem;display:flex;justify-content:center;align-items:center;color:var(--text-secondary)}.status-indicator{display:inline-block;width:12px;height:12px;background-color:var(--primary);margin-right:5px}.banner-image-style-main{position:absolute;left:100px;top:60px}.banner-image-style-main img{padding:1rem}.banner-image-dots-main{position:absolute;right:70px;z-index:99;bottom:20px}.banner-image-dots-main img{padding:1rem;width:140px;height:140px;z-index:4}.banner-axthtech-a{text-decoration:none}.highlight-axthtech-first{color:var(--text-muted)!important;font-weight:600!important;transition:color .2s}.highlight-axthtech-first:hover{color:var(--primary)!important}.animate-home-banner-from-left,.animate-from-right,.animate-from-bottom{opacity:0;transform:translateY(-30px);transition:opacity .5s ease-out,transform .5s ease-out}.animate-home-banner-from-left{transform:translateY(-100px)}@media (max-width: 768px){.home-banner-content{width:100%;padding:0;align-items:center}.home-banner{flex-direction:column;text-align:center;padding:1rem .25rem}.home-banner-content,.home-banner-image{max-width:100%}.home-banner-image{width:100%;padding:0}.banner-image-style-main,.banner-image-dots-main{display:none}}.quote-outer-container{width:100%;display:flex;justify-content:center;align-items:center;padding:40px 7rem}.quote-container{display:flex;flex-direction:column;align-items:flex-end;background:transparent;color:var(--text);padding:20px;max-width:700px;margin:20px;position:relative;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out,color .3s ease}.quote-content{position:relative;display:flex;border:2px solid var(--border);align-items:center;padding:2rem;text-align:justify;transition:border-color .3s ease}.quote-icon{font-size:2.5rem;color:var(--text-secondary);background-color:var(--background);padding:.5rem;transition:color .3s ease,background-color .3s ease}.quote-icon-left{position:absolute;top:-20px;left:10px}.quote-icon-right{position:absolute;bottom:-20px;right:10px}.quote-text{font-size:1.25rem}.quote-author{font-size:1rem;color:var(--text);border:2px solid var(--border);border-top:none;align-self:flex-end;padding:1rem;transition:color .3s ease,border-color .3s ease}.animate-fade-in{opacity:0;transform:translateY(30px)}.animate-visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){.quote-container{max-width:100%;padding:1rem .5rem}.quote-outer-container{padding:1rem 0}}.project-section{padding:40px 7rem;color:var(--text-secondary);transition:color .3s ease,background-color .3s ease}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;opacity:0;transform:translateY(-20px);transition:opacity .6s ease,transform .6s ease}.section-header.animate-slide-in{opacity:1;transform:translateY(0)}.section-header h2{font-size:2rem;color:var(--primary);font-weight:500;transition:color .3s ease}.section-header h2 span{color:var(--text);transition:color .3s ease}.section-header .view-all{font-size:1.25em;color:var(--text);text-decoration:none;display:flex;justify-content:center;align-items:center;transition:color .3s ease,transform .3s ease}.section-header .view-all:hover{color:var(--primary);transform:translate(5px)}.section-header .view-all span{margin-left:5px;color:var(--primary);transition:color .3s ease,transform .3s ease}.section-header .view-all:hover span{transform:translate(3px)}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:1.5rem}.project-card{background-color:var(--background-card);overflow:hidden;width:100%;max-width:400px;display:flex;flex-direction:column;transition:all .3s ease,background-color .3s ease,border-color .3s ease;border:1px solid var(--border);position:relative;cursor:pointer}.project-card:hover .project-image img{transform:scale(1.05)}.project-card.animate-slide-in{opacity:1;transform:translate(0)}.project-card:hover .project-details h3{color:var(--primary)}.project-image{width:100%;height:200px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;border-bottom:1px solid var(--border);transition:transform .3s ease,border-color .3s ease}.tech-stack{font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:5px 10px;transition:color .3s ease,border-color .3s ease}.project-details h3{font-size:1.2rem;color:var(--text);padding:5px 10px;transition:transform .3s ease,color .3s ease}.project-details p{font-size:.9rem;color:var(--text-muted);padding:5px 10px;transition:color .3s ease}.section-header-inner{display:flex;justify-content:center;align-items:center}.section-line{width:500px;height:1.5px;background-color:var(--primary);margin-left:10px;transition:background-color .3s ease}@media (max-width: 968px){.section-line{width:200px}.project-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.project-grid{grid-template-columns:1fr}.project-section{padding:1rem}.section-header h2{font-size:1.75rem;color:var(--primary)}.section-line{display:none}.project-card{margin-bottom:.25rem;max-width:100%}}.video-expand-button{display:flex;align-items:center;justify-content:center;width:100%;padding:10px 20px;margin-top:20px;background:transparent;border:2px solid var(--primary-hover);color:var(--text);font-size:1rem;cursor:pointer;text-align:center;transition:background-color .3s ease,border-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}.video-expand-button:hover{background-color:var(--primary);border-color:var(--primary);color:var(--button-text);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.3)}.skill-section-outer{display:flex;flex-direction:column;justify-content:center;padding:40px 7rem;overflow:hidden}.skill-section{display:flex;justify-content:center;align-items:center;color:var(--text);transition:color .3s ease}.skill-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;opacity:0;transform:translateY(-20px);transition:opacity .6s ease,transform .6s ease}.skill-header.animate-slide-in{opacity:1;transform:translateY(0)}.skill-header-inner{display:flex;justify-content:center;align-items:center}.skill-header h2{font-size:2rem;font-weight:500;color:var(--primary);transition:color .3s ease}.skill-header h2 span{color:var(--text);transition:color .3s ease}.skill-container{display:flex;flex-direction:column;width:100%}.skill-images{width:40%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:2rem;opacity:0;transform:translate(-100px);transition:opacity .6s ease,transform .6s ease}.skill-images.animate-slide-in{opacity:1;transform:translate(0)}.skill-images div{display:flex;width:100%;justify-content:space-between;align-items:center;margin:5rem 0}.skill-images div img{width:100px;height:100px}.skill-icon{font-size:50px;color:var(--primary);transition:color .3s ease}.skill-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:flex-start}.skill-box{background-color:var(--background-card);border:1px solid var(--border);box-sizing:border-box;text-align:center;opacity:0;transform:translate(100px);transition:opacity .6s ease,transform .6s ease,background-color .3s ease,border-color .3s ease,box-shadow .3s ease;cursor:default}.skill-box.animate-slide-in{opacity:1;transform:translate(0)}.skill-box h3{border-bottom:1px solid var(--border);padding:.25rem;transition:border-color .3s ease}.skill-box p{padding:.5rem 0;color:var(--text-muted);transition:color .3s ease}.skill-grid>.skill-box:nth-child(4){grid-column:span 1/3}.skill-grid>.skill-box:nth-child(6){grid-column:span 1/4}@media (max-width: 768px){.skill-container{flex-direction:column;align-items:center}.skill-images{flex-direction:row;justify-content:space-around;margin-bottom:20px}.skill-grid{width:100%;display:flex;justify-content:center;align-items:center;flex-direction:column;margin-left:0}.skill-grid>.skill-box:nth-child(4),.skill-grid>.skill-box:nth-child(5),.skill-grid>.skill-box:nth-child(6){grid-column:span 1}.skill-section-outer{padding:1rem}.skill-images div{flex-direction:column}.skill-images div img{padding:1rem}.skill-images{padding:.25rem;width:100%}.skill-box{width:100%}}.aboutme-outer{padding:40px 7rem;overflow:hidden}.aboutme-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;color:var(--text);gap:20px;transition:color .3s ease}.aboutme-description-text{margin:.5rem 0;color:var(--text-secondary);transition:color .3s ease}.aboutme-section-header{display:flex;justify-content:space-between;align-items:center;opacity:0;transform:translateY(-20px);transition:opacity .6s ease,transform .6s ease}.highlight-axthtech{color:var(--primary);font-weight:500;transition:color .3s ease}.aboutme-section-header.animate-slide-in{opacity:1;transform:translateY(0)}.aboutme-section-header h2{font-size:2rem;color:var(--primary);font-weight:500;transition:color .3s ease}.aboutme-section-header h2 span{color:var(--text);transition:color .3s ease}.aboutme-section-header-inner{display:flex;justify-content:center;align-items:center}.aboutme-section-line{width:500px;height:1.5px;background-color:var(--primary);margin-left:10px;transition:background-color .3s ease}.aboutme-banner-content{width:50%;display:flex;align-items:self-start;flex-direction:column;text-align:start;opacity:0;transform:translate(-100px);transition:opacity .6s ease,transform .6s ease}.aboutme-banner-content.animate-slide-in{opacity:1;transform:translate(0)}.aboutme-banner-content p{margin-bottom:1.75rem;font-size:1.125rem;color:var(--text-secondary);text-align:justify;transition:color .3s ease}.aboutme-banner-content p:nth-child(1){text-align:left}.aboutme-contact-button{margin-top:20px;padding:10px 20px;border:2px solid var(--primary-hover);background-color:transparent;color:var(--text);cursor:pointer;font-size:1rem;transition:background-color .3s ease,color .3s ease,border-color .3s ease,transform .3s ease,box-shadow .3s ease}.aboutme-contact-button:hover{background-color:var(--primary);border-color:var(--primary);color:var(--button-text);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.3)}.aboutme-banner-image{position:relative;width:40%;display:flex;justify-content:center;align-items:center;flex-direction:column;opacity:0;transform:translate(100px);transition:opacity .6s ease,transform .6s ease}.aboutme-banner-image.animate-slide-in{opacity:1;transform:translate(0)}.aboutme-banner-image-div{display:flex;justify-content:center;align-items:center}.aboutme-banner-image img{width:100%;border-radius:8px;z-index:1}.aboutme-banner-image-style-main{position:absolute;left:100px;top:60px}.aboutme-banner-image-style-main img{padding:1rem}.aboutme-banner-image-dots-main{position:absolute;right:70px;z-index:99;bottom:0}.aboutme-banner-image-dots-main img{padding:1rem;width:140px;height:140px;z-index:4}@media (max-width: 768px){.aboutme-banner-content{width:100%;padding:0}.aboutme-banner{flex-direction:column;text-align:center;padding:1rem .25rem}.aboutme-outer{padding:1rem}.aboutme-banner-content,.aboutme-banner-image{max-width:100%}.aboutme-banner-image{width:100%;padding:0}.aboutme-section-header-inner h2{font-size:1.75rem}.aboutme-section-line,.aboutme-banner-image-style-main,.aboutme-banner-image-dots-main{display:none}}@media print{.navbar,.footer,.whatsapp-icon,.scroll-to-top-btn,.aboutme-section-line{display:none!important}.aboutme-outer{padding:0;background:#fff}.aboutme-section-header{margin-bottom:1rem;page-break-after:avoid}.aboutme-section-header h2{color:#000!important;font-size:2rem!important}.aboutme-section-header h2 span{color:#333!important}.aboutme-banner{flex-direction:column;gap:1rem}.aboutme-banner-content{width:100%;opacity:1;transform:none}.aboutme-banner-content p{color:#333!important;font-size:11pt!important;margin-bottom:.75rem!important;page-break-inside:avoid}.aboutme-banner-image{width:200px;margin:0 auto;opacity:1;transform:none;page-break-inside:avoid}.aboutme-banner-image img{border:2px solid #ddd;max-width:200px}.aboutme-contact-button{display:none!important}.aboutme-description-text{color:#666!important;margin-bottom:.5rem}.aboutme-skills-section{page-break-before:avoid;page-break-inside:avoid}.aboutme-skills-section h2{color:#000!important;page-break-after:avoid}.skill-box{background:#f9f9f9!important;border:1px solid #ddd!important;page-break-inside:avoid;margin-bottom:.5rem}.skill-box h3{color:#000!important}.skill-box p{color:#333!important}.fun-facts-section{page-break-before:auto}.fun-fact-card{background:#f9f9f9!important;border:1px solid #ddd!important;page-break-inside:avoid}.fun-fact-card h3{color:#000!important}.fun-fact-card p{color:#333!important}}.contact-outer{padding:40px 7rem;overflow:hidden}.contact-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;opacity:0;transform:translateY(-100px);transition:opacity .8s ease,transform .8s ease}.contact-section-header.visible{opacity:1;transform:translateY(0)}.contact-section-header h2{font-size:2rem;color:var(--primary);font-weight:500;transition:color .3s ease}.contact-section-header h2 span{color:var(--text);transition:color .3s ease}.contact-section-header-inner{display:flex;justify-content:center;align-items:center}.contact-section-line{width:500px;height:1.5px;background-color:var(--primary);margin-left:10px;transition:background-color .3s ease}.contact-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;color:var(--text);gap:20px;transition:color .3s ease}.contact-banner-content{width:50%;display:flex;align-items:flex-start;flex-direction:column;text-align:start;opacity:0;transform:translate(-100px);transition:opacity .8s ease,transform .8s ease}.contact-banner-content.visible{opacity:1;transform:translate(0)}.contact-banner p{margin-bottom:1.75rem;font-size:1.125rem;color:var(--text-secondary);text-align:justify;transition:color .3s ease}.contact-banner-message{position:relative;display:flex;justify-content:center;align-items:center;flex-direction:column;opacity:0;transform:translate(100px);transition:opacity .8s ease,transform .8s ease}.contact-banner-message.visible{opacity:1;transform:translate(0)}.contact-banner-message-inner{border:2px solid var(--border);padding:1rem;display:flex;flex-direction:column;justify-content:start;transition:border-color .3s ease}.contact-banner-message-inner p:nth-child(1){font-weight:500;color:var(--text);margin-bottom:.5rem;padding:.25rem .15rem;transition:color .3s ease}.contact-each-icon{color:var(--text-secondary);margin-right:.5rem;font-size:1.25rem;transition:color .3s ease-in-out}.contact-contacts-outer div{margin-bottom:.75rem;display:flex;align-items:center}.contact-contacts-outer a{text-decoration:none;color:var(--text-secondary);font-size:1rem;transition:color .3s ease,transform .3s ease;display:flex;align-items:center}.contact-contacts-outer a:hover,.contact-contacts-outer a:hover .contact-each-icon{color:var(--primary)}@media (max-width: 768px){.contact-banner-content{width:100%;padding:0;align-items:center}.contact-banner{flex-direction:column;text-align:center;padding:1rem .25rem}.contact-outer{padding:1rem .25rem}.contact-banner-content,.contact-banner-message{max-width:100%}.contact-banner-message{width:100%;padding:0}.contact-section-line{display:none}}.experience-section-outer{display:flex;flex-direction:column;justify-content:center;padding:40px 7rem;overflow:hidden}.experience-header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.experience-header-inner{display:flex;justify-content:center;align-items:center}.experience-header-inner h2{font-size:2rem;font-weight:500;transition:color .3s ease;color:var(--primary)}.experience-header-inner h2 span{color:var(--text);transition:color .3s ease}.experience-timeline-container{position:relative;padding:20px 0}.timeline-center-line{position:absolute;left:50%;top:0;bottom:0;width:3px;background:var(--primary);transform:translate(-50%);opacity:.6}.experience-timeline{display:flex;flex-direction:column;gap:50px}.experience-item{display:flex;align-items:center;position:relative;width:100%}.experience-item.left{justify-content:flex-start;padding-right:calc(50% + 40px)}.experience-item.right{justify-content:flex-end;padding-left:calc(50% + 40px)}.experience-connector{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;z-index:2}.connector-dot{width:18px;height:18px;background:var(--background);border:3px solid var(--primary);border-radius:50%;transition:all .3s ease;position:relative;z-index:3}.experience-item:has(.experience-card:hover) .connector-dot{background:var(--primary);box-shadow:0 0 20px var(--primary);transform:scale(1.3)}.connector-line{position:absolute;height:2px;background:var(--primary);top:50%;transform:translateY(-50%);z-index:1;width:355px}.experience-item.left .connector-line{left:calc(50% - 364px)}.experience-item.right .connector-line{left:calc(50% + 9px)}.experience-card{background-color:var(--background-card);border:1px solid var(--border);padding:24px;width:100%;max-width:480px;transition:all .3s ease;position:relative;cursor:pointer;z-index:10}.experience-card:hover{border-color:var(--primary);box-shadow:0 8px 30px #0000004d;transform:translateY(-6px)}.experience-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.experience-icon{width:44px;height:44px;background:var(--primary-light);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.2rem}.experience-type{font-size:.75rem;padding:6px 14px;background:var(--primary-light);color:var(--primary);font-weight:600;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--primary)}.experience-role{font-size:1.25rem;font-weight:600;color:var(--text);margin:0 0 6px;transition:color .3s ease}.experience-card:hover .experience-role{color:var(--primary)}.experience-company{font-size:1rem;font-weight:500;color:var(--text-secondary);margin:0 0 16px}.experience-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.experience-date,.experience-location{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--text-secondary)}.experience-date svg,.experience-location svg{color:var(--primary);font-size:.85rem}.experience-description{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.experience-skills{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid var(--border)}.experience-skill-tag{font-size:.8rem;padding:6px 12px;background:var(--primary-light);border:1px solid var(--border);color:var(--text-secondary);transition:all .3s ease}.experience-skill-tag:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}@media (max-width: 900px){.experience-section-outer{padding:40px 2rem}.timeline-center-line{left:20px}.experience-item.left,.experience-item.right{justify-content:flex-start;padding-left:70px;padding-right:0}.experience-connector{left:20px}.experience-item.left .connector-line,.experience-item.right .connector-line{left:29px!important;right:auto!important;width:40px!important}.experience-card{max-width:100%}}@media (max-width: 768px){.experience-section-outer{padding:1rem}.experience-header-inner h2{font-size:1.5rem}.experience-card{padding:16px}.experience-role{font-size:1.1rem}.experience-company{font-size:.95rem}.experience-timeline{gap:30px}.experience-item.left .connector-line,.experience-item.right .connector-line{width:25px!important}.experience-item.left,.experience-item.right{padding-left:55px}.experience-icon{width:36px;height:36px;font-size:1rem}.experience-type{font-size:.7rem;padding:4px 10px}}.aboutme-page-skill-section-outer{padding:40px 7rem;overflow:hidden}.aboutme-page-description-text{margin:.5rem 0 1.5rem;color:var(--text-secondary);transition:color .3s ease}.aboutme-page-skill-header h2{font-size:2rem;font-weight:500;color:var(--primary);transition:color .3s ease}.aboutme-page-skill-header h2 span{color:var(--text);transition:color .3s ease}.aboutme-page-skill-section{display:flex;justify-content:center;align-items:center;color:var(--text);transition:color .3s ease}.aboutme-page-skill-container{display:flex;width:100%}.aboutme-page-skill-grid{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}.aboutme-page-skill-box{background-color:var(--background-card);border:1px solid var(--border);box-sizing:border-box;text-align:center;transition:background-color .3s ease,border-color .3s ease}.aboutme-page-skill-box h3{border-bottom:1px solid var(--border);padding:.25rem;transition:border-color .3s ease}.aboutme-page-skill-box p{padding:.5rem 0;color:var(--text-muted);transition:color .3s ease}@media (max-width: 768px){.aboutme-page-skill-section-outer{padding:1rem;width:100%}.aboutme-page-skill-grid{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:3rem 0}.aboutme-page-skill-box{width:100%;margin-bottom:.25rem}}.aboutme-page-hobby-section-outer{padding:40px 7rem;overflow:hidden}.aboutme-page-hobby-header h2{font-size:2rem;font-weight:500;color:var(--primary);transition:color .3s ease}.aboutme-page-hobby-header h2 span{color:var(--text);transition:color .3s ease}.aboutme-page-hobby-section{display:flex;justify-content:center;align-items:center;color:var(--text);transition:color .3s ease}.aboutme-page-hobby-container{display:flex;width:100%}.aboutme-page-hobby-grid{display:grid;width:100%;gap:20px;grid-template-columns:1fr 1fr;align-items:flex-start}.aboutme-page-hobby-box{background-color:var(--background-card);border:1px solid var(--border);box-sizing:border-box;text-align:center;padding:1rem;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease;cursor:default}.aboutme-page-hobby-box-wide{grid-column:span 1}.aboutme-page-hobby-box p{padding:.5rem 0;color:var(--text-muted);transition:color .3s ease}@media (max-width: 768px){.aboutme-page-hobby-images{display:none}.aboutme-page-hobby-section-outer{padding:1rem}.aboutme-page-hobby-grid{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:3rem 0}.aboutme-page-hobby-box{width:100%;margin-bottom:.25rem}}.project-page-section{padding:40px 7rem;color:var(--text-secondary);overflow:visible;min-height:calc(100vh - 200px);background-color:var(--background);transition:color .3s ease,background-color .3s ease}.project-page-section-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1.5rem;margin:0 0 1.5rem}.project-page-section-header-inner{flex:1;min-width:250px}.project-page-section-header h2{font-size:2rem;color:var(--primary);font-weight:500;margin:0;transition:color .3s ease}.project-page-section-header h2 span{color:var(--text);transition:color .3s ease}.project-page-description-text{color:var(--text-secondary);font-size:1rem;margin:0 0 .5rem;transition:color .3s ease}.project-page-header-actions{display:flex;gap:1rem;align-items:center}.export-json-btn{display:flex;align-items:center;gap:.5rem;padding:10px 20px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--button-text);border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.export-json-btn:hover{box-shadow:0 4px 12px rgba(var(--primary-rgb),.3);transform:translateY(-2px)}.export-json-btn .export-icon{font-size:1.2rem}.project-comparison-row{display:flex;justify-content:flex-start;margin-bottom:1.5rem}.projects-category-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:2rem}.projects-category-filter .category-btn{position:relative;background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:8px 20px;font-size:.95rem;cursor:pointer;transition:color .3s ease,border-color .3s ease,background-color .3s ease;overflow:hidden}.projects-category-filter .category-btn:hover{border-color:var(--border-hover);color:var(--text)}.projects-category-filter .category-btn.active{color:var(--button-text);border-color:transparent}.projects-category-filter .category-active-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);z-index:-1}.projects-category-filter .category-text{position:relative;z-index:1}.project-page-complete-outer{margin-bottom:3rem}.project-page-complete-main h2{font-size:2rem;color:var(--primary);font-weight:500;margin:0;transition:color .3s ease}.project-page-complete-main h2 span{color:var(--text);transition:color .3s ease}.project-page-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:1.5rem}.no-projects-message{text-align:center;padding:2rem;color:var(--text-secondary);font-size:1.2rem;background-color:var(--background-card);border:1px solid var(--border);border-radius:4px;margin-top:2rem;width:100%;transition:color .3s ease,background-color .3s ease,border-color .3s ease}.animate-from-top,.animate-from-left,.animate-from-right,.animate-from-bottom{opacity:0;transform:translateY(-30px);transition:all .5s ease-out}.animate-from-left{transform:translate(-100px)}.animate-from-right{transform:translate(100px)}@media (max-width: 1400px){.project-page-project-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1200px){.project-page-section{padding:40px 4rem}}@media (max-width: 992px){.project-page-section{padding:40px 2rem}.project-page-project-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.project-page-section{padding:20px 1rem}.project-page-section-header{flex-direction:column;gap:1rem}.project-page-section-header h2{font-size:1.75rem}.projects-category-filter{gap:8px}.projects-category-filter .category-btn{padding:6px 14px;font-size:.85rem}.project-comparison-row{justify-content:stretch}.comparison-trigger-btn{flex:1}.project-page-project-grid{grid-template-columns:1fr}.project-page-header-actions{flex-wrap:wrap}}@media (max-width: 480px){.project-page-section-header h2{font-size:1.5rem}}.modal-content::-webkit-scrollbar{width:12px}.modal-content::-webkit-scrollbar-track{background:var(--background)}.modal-content::-webkit-scrollbar-thumb{background-color:var(--text);border-radius:6px;border:3px solid var(--background)}.modal-content::-webkit-scrollbar-thumb:hover{background-color:var(--text)}.modal-content{scrollbar-width:thin;scrollbar-color:var(--text) var(--background)}.category-modal-content{max-width:400px;width:90%}.category-list{display:flex;flex-direction:column;gap:10px}.category-item{padding:10px;background-color:var(--background-hover);color:var(--text);cursor:pointer;transition:all .3s ease,background-color .3s ease}.category-item:hover{background-color:var(--primary)}.category-item.active{background-color:var(--primary);color:var(--text)}.video-expand-button{display:flex;align-items:center;justify-content:center;width:100%;padding:10px 20px;margin-top:20px;background:transparent;border:2px solid var(--primary-hover);color:var(--text);font-size:1rem;cursor:pointer;text-align:center;transition:background-color .3s ease,border-color .3s ease,color .3s ease}.video-expand-button svg{margin-right:8px}.video-expand-button:hover{background-color:var(--background-hover)}.project-modal-title{margin:.5rem 0}.modal-tech-stack{font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:8px 12px;background-color:var(--primary-light);transition:color .3s ease,border-color .3s ease,background-color .3s ease}.project-modal-description{font-size:1rem;color:var(--text-muted);margin:10px 0;transition:color .3s ease}.category-selection-modal{margin:10px 0}.keyboard-focused .project-card{outline:2px solid var(--primary);outline-offset:4px;box-shadow:0 0 20px rgba(var(--primary-rgb),.3)}.project-detail-section{padding:120px 7rem 40px;color:var(--text-secondary);overflow:hidden;min-height:calc(100vh - 200px);background-color:var(--background);position:relative;transition:color .3s ease,background-color .3s ease}.project-detail-section .copy-toast{position:fixed;top:100px;right:30px;background:linear-gradient(135deg,var(--background-secondary),var(--background-secondary));border:1px solid var(--primary);padding:14px 28px;border-radius:8px;display:flex;align-items:center;gap:12px;z-index:1000;box-shadow:0 2px 8px #0003;transition:background .3s ease,border-color .3s ease}.project-detail-section .toast-icon{font-size:1.5rem;color:#4ade80;display:flex;align-items:center;justify-content:center}.project-detail-section .toast-text{color:var(--text);font-size:.95rem;font-weight:500;transition:color .3s ease}.project-detail-section .sticky-back-container{position:fixed;top:100px;left:80px;z-index:100}.back-to-projects{display:inline-flex;align-items:center;gap:.75rem;color:var(--text-secondary);text-decoration:none;font-size:.95rem;padding:12px 24px;background:var(--background-secondary);border-radius:50px;transition:all .3s ease,background-color .3s ease,color .3s ease;font-weight:500;box-shadow:0 2px 8px #0003}.back-to-projects:hover{color:var(--text);border-color:var(--border-hover);background:linear-gradient(135deg,var(--primary-light),rgba(var(--primary-rgb),.1));transform:translate(-5px)}.back-to-projects .back-icon{font-size:1.25rem;color:var(--primary);transition:all .3s ease}.back-to-projects:hover .back-icon{color:var(--text)}.back-to-projects .back-text{transition:color .3s ease}.project-detail-section .scroll-to-top-btn{position:fixed;bottom:95px;right:20px;width:55px;height:55px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;box-shadow:0 2px 8px rgba(var(--primary-rgb),.25);transition:transform .2s ease,box-shadow .2s ease,background .3s ease}.project-detail-section .scroll-to-top-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(var(--primary-rgb),.35)}.project-detail-section .scroll-top-icon{font-size:1.75rem;color:var(--button-text);transition:color .3s ease}.project-detail-header{margin:0 0 2rem}.project-detail-header-inner{max-width:900px;margin:0 auto}.project-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem}.project-detail-category{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:500;transition:background .3s ease}.project-detail-date{color:var(--text-secondary);font-size:.9rem;transition:color .3s ease}.project-type-badge{background:var(--primary-light);color:var(--primary);padding:6px 14px;border-radius:20px;font-size:.8rem;border:1px solid rgba(var(--primary-rgb),.3);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.project-detail-title{font-size:2.75rem;font-weight:600;color:var(--text);margin:0 0 .75rem;line-height:1.2;transition:color .3s ease}.project-detail-subtitle{font-size:1.25rem;color:var(--text-secondary);margin:0 0 1.5rem;line-height:1.5;transition:color .3s ease}.project-detail-tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-detail-tech-stack .tech-badge{background:var(--primary-light);color:var(--primary);padding:6px 14px;border-radius:6px;font-size:.85rem;border:1px solid rgba(var(--primary-rgb),.25);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.project-action-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s ease}.project-lighthouse-container{margin-top:2rem;padding:1.5rem;background:var(--background-secondary);border:1px solid var(--border);border-radius:12px;display:flex;justify-content:center}.action-btn .btn-icon{font-size:1.25rem}.live-btn{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);transition:all .3s ease,background .3s ease}.live-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--primary-rgb),.4)}.github-btn{background:transparent;color:var(--text);border:1px solid var(--border);transition:all .3s ease,border-color .3s ease,color .3s ease}.github-btn:hover{border-color:var(--border-hover);color:var(--primary);transform:translateY(-2px)}.video-btn{background:transparent;color:var(--primary);border:1px solid var(--primary);transition:all .3s ease,background-color .3s ease,border-color .3s ease,color .3s ease}.video-btn:hover{background:var(--primary-light);transform:translateY(-2px)}.project-detail-hero{max-width:900px;margin:0 auto 2.5rem;border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.25);transition:border-color .3s ease}.project-detail-hero .image-container,.project-detail-hero .project-hero-image{width:100%;min-height:300px;max-height:500px}.project-detail-hero img,.project-detail-hero .lazy-image{width:100%;height:auto;max-height:500px;display:block;object-fit:cover}.project-gallery-section{max-width:900px;margin:0 auto 2.5rem}.gallery-title{color:var(--text);font-size:1.25rem;margin:0 0 1.5rem;font-weight:500;display:flex;align-items:center;gap:.75rem;transition:color .3s ease}.gallery-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,var(--primary),var(--secondary));border-radius:2px;transition:background .3s ease}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.gallery-item{border-radius:10px;overflow:hidden;border:1px solid rgba(171,178,191,.19);background:var(--background-secondary);transition:all .3s ease,background-color .3s ease,border-color .3s ease;cursor:pointer;display:block;text-decoration:none}.gallery-item:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:0 8px 25px rgba(var(--primary-rgb),.2)}.gallery-item .image-container,.gallery-item .gallery-image{width:100%;min-height:180px}.gallery-item img,.gallery-item .lazy-image{width:100%!important;height:auto;display:block;object-fit:cover;transition:transform .4s ease}.gallery-item:hover .lazy-image{transform:scale(1.05)}.project-highlights-section{max-width:900px;margin:0 auto 2.5rem;background:var(--background-secondary);border-radius:12px;padding:2rem;border:1px solid rgba(171,178,191,.25);transition:background-color .3s ease,border-color .3s ease}.highlights-title{color:var(--text);font-size:1.25rem;margin:0 0 1.5rem;font-weight:500;transition:color .3s ease}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.highlight-card{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--primary-light);border-radius:8px;color:var(--text-secondary);font-size:.95rem;transition:background-color .3s ease,color .3s ease}.project-detail-content{max-width:900px;margin:0 auto}.project-content-body{display:flex;flex-direction:column;gap:2rem}.project-content-heading{font-size:1.75rem;color:var(--text);margin:0;font-weight:500;padding-bottom:.5rem;border-bottom:2px solid var(--primary);transition:color .3s ease,border-color .3s ease}.project-content-paragraph{font-size:1.1rem;line-height:1.8;color:var(--text-secondary);margin:0;transition:color .3s ease}.project-code-block{background:var(--background-secondary);border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.25);transition:background-color .3s ease,border-color .3s ease}.project-code-block .code-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--primary-light);border-bottom:1px solid rgba(171,178,191,.25);transition:background-color .3s ease,border-color .3s ease}.project-code-block .code-language{color:var(--primary);font-size:.85rem;text-transform:uppercase;font-weight:500;transition:color .3s ease}.project-code-block .copy-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:6px 14px;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .3s ease,border-color .3s ease,color .3s ease}.project-code-block .copy-btn:hover{border-color:var(--border-hover);color:var(--primary)}.project-code-block pre{margin:0;padding:1.5rem;overflow-x:auto}.project-code-block code{font-family:Fira Code,monospace;font-size:.9rem;line-height:1.6;color:var(--text-secondary);white-space:pre;transition:color .3s ease}.project-highlights-box{background:var(--background-secondary);border-radius:12px;padding:1.75rem 2rem;border:1px solid rgba(171,178,191,.25);transition:background-color .3s ease,border-color .3s ease}.project-highlights-box .highlights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.project-highlights-box .highlight-item{display:flex;align-items:flex-start;gap:.75rem;color:var(--text-secondary);font-size:1rem;line-height:1.5;transition:color .3s ease}.project-highlights-box .highlight-icon{color:#4ade80;font-weight:700;flex-shrink:0}.project-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.project-stats-grid .stat-card{background:linear-gradient(135deg,var(--primary-light),rgba(var(--primary-rgb),.1));border:1px solid rgba(var(--primary-rgb),.25);border-radius:12px;padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem;transition:background .3s ease,border-color .3s ease}.project-stats-grid .stat-value{font-size:1.75rem;font-weight:600;color:var(--primary);transition:color .3s ease}.project-stats-grid .stat-label{font-size:.9rem;color:var(--text-secondary);transition:color .3s ease}.project-content-image{margin:0;border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.25);transition:border-color .3s ease}.project-content-image img{width:100%;height:auto;display:block;object-fit:cover}.project-content-image figcaption{background:var(--background-secondary);padding:1rem;text-align:center;color:var(--text-secondary);font-size:.9rem;font-style:italic;transition:background-color .3s ease,color .3s ease}.related-projects-section{max-width:900px;margin:4rem auto 0;padding-top:3rem;border-top:1px solid rgba(171,178,191,.25);transition:border-color .3s ease}.related-title{font-size:1.5rem;color:var(--text);margin:0 0 2rem;font-weight:500;transition:color .3s ease}.related-projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.related-project-card{background:var(--background-secondary);border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.25);text-decoration:none;transition:all .3s ease,background-color .3s ease,border-color .3s ease}.related-project-card:hover{border-color:var(--border-hover);transform:translateY(-5px)}.related-project-image{height:150px;overflow:hidden}.related-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-project-card:hover .related-project-image img{transform:scale(1.05)}.related-project-info{padding:1.25rem}.related-category{font-size:.75rem;color:var(--primary);text-transform:uppercase;letter-spacing:.5px;transition:color .3s ease}.related-project-title{font-size:1rem;color:var(--text);margin:.5rem 0 .25rem;font-weight:500;transition:color .3s ease}.related-project-subtitle{font-size:.85rem;color:var(--text-secondary);margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .3s ease}.animate-from-top,.animate-from-bottom{opacity:0;transition:opacity .6s ease,transform .6s ease}@media (max-width: 1200px){.project-detail-section{padding:120px 4rem 40px}.project-detail-section .sticky-back-container{left:40px}}@media (max-width: 992px){.project-detail-section{padding:120px 2rem 40px}.project-detail-title{font-size:2.25rem}.project-stats-grid,.related-projects-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width: 768px){.project-detail-section{padding:40px 1rem 20px}.project-detail-hero{border-radius:8px;margin-bottom:1.5rem}.project-detail-hero .image-container,.project-detail-hero .project-hero-image{min-height:200px;max-height:300px}.project-detail-hero img,.project-detail-hero .lazy-image{max-height:300px}.project-detail-title{font-size:1.85rem}.project-detail-subtitle{font-size:1.1rem}.project-detail-meta{flex-direction:column;align-items:flex-start;gap:.75rem}.project-content-heading{font-size:1.4rem}.project-content-paragraph{font-size:1rem}.project-highlights-section{padding:1.25rem}.highlights-grid,.related-projects-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.gallery-title{font-size:1.1rem}.project-action-buttons{flex-direction:column}.action-btn{justify-content:center}.project-detail-section .sticky-back-container{position:relative;top:0;left:0;margin-bottom:1.5rem}.back-to-projects{padding:10px 18px;font-size:.85rem;gap:.5rem}.back-to-projects .back-icon{font-size:1rem}.project-detail-section .scroll-to-top-btn{bottom:80px;right:15px;width:45px;height:45px}.project-detail-section .scroll-top-icon{font-size:1.25rem}}@media (max-width: 480px){.project-detail-hero .image-container,.project-detail-hero .project-hero-image{min-height:150px;max-height:220px}.project-detail-hero img,.project-detail-hero .lazy-image{max-height:220px}.project-detail-title{font-size:1.6rem}.project-code-block pre{padding:1rem}.project-code-block code{font-size:.8rem}.project-stats-grid{grid-template-columns:repeat(2,1fr)}.project-stats-grid .stat-value{font-size:1.25rem}.gallery-grid{grid-template-columns:1fr}}.image-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;cursor:pointer}.image-modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;cursor:default}.image-modal-content img{max-width:100%;max-height:calc(90vh - 60px);object-fit:contain;border-radius:4px}.image-modal-close{position:absolute;top:-50px;right:0;background:transparent;border:none;color:#fff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.75rem;transition:all .3s ease;opacity:.7}.image-modal-close:hover{opacity:1;transform:scale(1.1)}.image-modal-copyright{margin-top:20px;color:#ffffff80;font-size:.8rem;text-align:center;font-weight:400}.gallery-image-container{position:relative;width:100%;min-height:180px;overflow:hidden;background:var(--background-secondary)}.gallery-skeleton{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--background-hover);overflow:hidden;z-index:1}.gallery-skeleton .skeleton-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);animation:shimmerGallery 1.5s infinite}@keyframes shimmerGallery{0%{left:-100%}to{left:100%}}.gallery-img{position:relative;width:100%;height:auto;min-height:180px;display:block;object-fit:cover;opacity:0;transition:opacity .3s ease,transform .5s ease;z-index:2}.gallery-img.loaded{opacity:1}.gallery-item{cursor:pointer;overflow:hidden}.gallery-item:hover .gallery-img.loaded{transform:scale(1.08)}@media (max-width: 768px){.image-modal-close{top:-45px;right:0;width:36px;height:36px;font-size:1.25rem}.image-modal-copyright{font-size:.75rem}}.blogs-page-section{padding:40px 7rem;color:var(--text-secondary);overflow:visible;background-color:var(--background);transition:color .3s ease,background-color .3s ease}.blogs-page-section-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1.5rem;margin:0 0 1.5rem}.blogs-page-section-header-inner{flex:1;min-width:250px}.blogs-page-section-header h2{font-size:2rem;color:var(--primary);font-weight:500;margin:0;transition:color .3s ease}.blogs-page-section-header h2 span{color:var(--text);transition:color .3s ease}.blogs-page-description-text{color:var(--text-secondary);font-size:1rem;margin:.5rem 0 0;transition:color .3s ease}.blogs-category-filter{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:2rem}.category-btn{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:8px 20px;font-size:.9rem;cursor:pointer;transition:all .3s ease,color .3s ease,border-color .3s ease,background-color .3s ease;font-family:inherit;position:relative;overflow:hidden}.category-btn .category-text{position:relative;z-index:2}.category-btn .category-active-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--primary);z-index:1}.category-btn:hover{border-color:var(--border-hover);color:var(--primary)}.category-btn.active{border-color:var(--border-hover);color:var(--button-text)}.featured-blog-link{text-decoration:none;color:inherit;display:block;margin-bottom:2.5rem}.featured-blog-card{display:grid;grid-template-columns:1fr 1.2fr;background-color:var(--background-secondary);border:1px solid rgba(171,178,191,.25);overflow:hidden;transition:all .3s ease,background-color .3s ease,border-color .3s ease;cursor:pointer}.featured-blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(var(--primary-rgb),.15);border-color:var(--border-hover)}.featured-blog-image{position:relative;height:100%;min-height:380px;overflow:hidden}.featured-blog-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.featured-blog-card:hover .featured-blog-image img{transform:scale(1.05)}.featured-blog-content{padding:2rem;flex:1}.featured-blog-meta{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.featured-label{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);padding:4px 12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:background .3s ease}.blog-category-tag{background-color:#abb2bf21;color:var(--text-secondary);padding:4px 10px;font-size:.8rem;border:1px solid rgba(171,178,191,.25);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.featured-blog-title{font-size:1.75rem;font-weight:700;color:var(--text);margin:0 0 .5rem;line-height:1.3;transition:color .3s ease}.featured-blog-subtitle{font-size:1.1rem;color:var(--primary);margin:0 0 1rem;font-style:italic;transition:color .3s ease}.featured-blog-description{font-size:1rem;color:#d1d5db;line-height:1.6;margin:0 0 1.25rem}.featured-blog-highlights{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.highlight-item{color:#4ade80;font-size:.9rem}.featured-blog-tech{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background-color:rgba(var(--primary-rgb),.13);color:var(--primary);padding:6px 12px;font-size:.8rem;border:1px solid rgba(var(--primary-rgb),.25);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.blogs-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;margin-top:1rem}.blog-card-link{text-decoration:none;color:inherit}.blog-card{background-color:var(--background-card);overflow:hidden;display:flex;flex-direction:column;transition:all .3s ease,background-color .3s ease,border-color .3s ease;border:1px solid var(--border);cursor:pointer;height:100%;position:relative}.blog-card:hover{transform:translateY(-6px);box-shadow:0 8px 30px #0000004d;border-color:var(--border-hover)}.blog-card-bookmark{position:absolute;top:.5rem;right:.5rem;z-index:10}.blog-card-bookmark .bookmark-btn{background:var(--background);border-radius:50%;box-shadow:0 2px 8px #0003}.blog-card:hover .read-more-link{color:var(--primary)}.blog-card:hover .arrow{transform:translate(4px)}.blog-card-image{position:relative;width:100%;height:180px;overflow:hidden}.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.blog-card:hover .blog-card-image img{transform:scale(1.08)}.blog-details{padding:1.25rem;display:flex;flex-direction:column;flex-grow:1}.blog-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.blog-meta-inline{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.blog-date{color:var(--primary);font-weight:500;transition:color .3s ease}.blog-separator,.blog-read-time{color:var(--text-secondary);transition:color .3s ease}.blog-title{font-size:1.15rem;font-weight:600;color:var(--text);margin-bottom:.5rem;line-height:1.4;transition:color .3s ease}.blog-subtitle{font-size:.9rem;color:var(--secondary);margin-bottom:.75rem;font-style:italic;transition:color .3s ease}.blog-description{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin-bottom:1rem;flex-grow:1;transition:color .3s ease}.blog-tech-stack{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1rem}.tech-pill{background-color:#abb2bf14;color:var(--text-secondary);padding:4px 10px;font-size:.75rem;border:1px solid rgba(171,178,191,.19);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.blog-card-footer{margin-top:auto;padding-top:1rem;border-top:1px solid rgba(171,178,191,.19);transition:border-color .3s ease}.read-more-link{color:var(--text-secondary);font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:color .3s ease}.arrow{transition:transform .3s ease}.no-blogs-message{text-align:center;padding:4rem 2rem;color:var(--text-secondary);background-color:var(--background-secondary);border:1px dashed var(--border);margin-top:2rem;transition:color .3s ease,background-color .3s ease,border-color .3s ease}.empty-icon{font-size:4rem;display:block;margin-bottom:1rem}.no-blogs-message h3{font-size:1.5rem;color:var(--text);margin-bottom:.5rem;transition:color .3s ease}.no-blogs-message p{font-size:1rem;color:var(--text-secondary);transition:color .3s ease}.animate-from-top{transform:translateY(-30px)}.animate-from-bottom{transform:translateY(30px)}.animate-visible{opacity:1;transform:translate(0) translateY(0)}@media (max-width: 1400px){.blogs-page-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 1200px){.blogs-page-section{padding:40px 4rem}}@media (max-width: 992px){.blogs-page-section{padding:40px 2rem}.featured-blog-card{grid-template-columns:1fr}.featured-blog-image{min-height:250px}.featured-blog-title{font-size:1.5rem}}@media (max-width: 768px){.blogs-page-section{padding:20px 1rem}.blogs-page-section-header{flex-direction:column;gap:1rem}.blogs-page-section-header h2{font-size:1.75rem}.blogs-category-filter{gap:8px}.category-btn{padding:6px 14px;font-size:.85rem}.blogs-page-grid{grid-template-columns:1fr}.featured-blog-content{padding:1.5rem}.featured-blog-highlights{flex-direction:column;gap:.5rem}.featured-blog-image{min-height:200px}.blog-card-image{height:160px}}@media (max-width: 480px){.blogs-page-section-header h2{font-size:1.5rem}.blog-title{font-size:1.05rem}.featured-blog-image{min-height:180px}.featured-icon{font-size:2.5rem}.blog-card-image{height:140px}}.keyboard-focused .featured-blog-card,.keyboard-focused .blog-card{outline:2px solid var(--primary);outline-offset:4px;box-shadow:0 0 20px rgba(var(--primary-rgb),.3)}.keyboard-nav-hint{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;margin-top:2rem;color:var(--text-secondary);font-size:.85rem;opacity:.7;transition:opacity .3s ease}.keyboard-nav-hint:hover{opacity:1}.hint-key{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-family:monospace;font-size:.75rem;font-weight:600;color:var(--text)}.hint-text{margin:0 .25rem}@media (max-width: 768px){.keyboard-nav-hint{display:none}}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.blog-detail-section{padding:120px 7rem 40px;color:var(--text-secondary);overflow:hidden;min-height:calc(100vh - 200px);background-color:var(--background);position:relative;transition:color .3s ease,background-color .3s ease}.copy-toast{position:fixed;top:100px;right:30px;background:linear-gradient(135deg,var(--background-secondary),var(--background-card));border:1px solid #4ade80;padding:16px 24px 12px;border-radius:12px;min-width:280px;z-index:1000;box-shadow:0 8px 30px #0000004d;transition:background .3s ease,border-color .3s ease;overflow:hidden}.copy-toast .toast-content{display:flex;align-items:center;gap:12px;padding-right:24px}.copy-toast .toast-close-btn{position:absolute;top:8px;right:8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;border-radius:4px;transition:all .2s ease}.copy-toast .toast-close-btn:hover{color:var(--text);background:#ffffff1a}.copy-toast .toast-progress{position:absolute;bottom:0;left:0;height:3px;background:#4ade80;border-radius:0 0 12px 12px;transition:width .05s linear}.toast-icon{font-size:1.5rem;color:#4ade80;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-text{color:var(--text);font-size:.95rem;font-weight:500;transition:color .3s ease}@media (max-width: 768px){.copy-toast{top:80px;right:15px;left:15px;min-width:auto;padding:14px 18px 10px}}.sticky-back-container{position:fixed;top:100px;left:80px;z-index:100}.back-to-blogs{display:inline-flex;align-items:center;gap:.75rem;color:var(--text-secondary);text-decoration:none;font-size:.95rem;padding:12px 24px;background:var(--background-secondary);border-radius:50px;transition:all .3s ease,background-color .3s ease,color .3s ease;font-weight:500;box-shadow:0 4px 15px #0000004d}.back-to-blogs:hover{color:var(--text);border-color:var(--border-hover);background:linear-gradient(135deg,var(--primary-light),rgba(var(--primary-rgb),.1));transform:translate(-5px)}.back-icon{font-size:1.25rem;color:var(--primary);transition:all .3s ease}.back-to-blogs:hover .back-icon{color:var(--text)}.back-text{transition:color .3s ease}.scroll-to-top-btn{position:fixed;bottom:95px;right:20px;width:55px;height:55px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;box-shadow:0 2px 8px rgba(var(--primary-rgb),.25);transition:transform .2s ease,box-shadow .2s ease,background .3s ease}.scroll-to-top-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(var(--primary-rgb),.35)}.scroll-top-icon{font-size:1.75rem;color:var(--button-text);transition:color .3s ease}.blog-detail-header{margin:0 0 2rem}.blog-detail-header-inner{max-width:800px;margin:0 auto;text-align:center}.blog-detail-meta{display:flex;justify-content:center;gap:1rem;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap}.blog-detail-category{background:linear-gradient(135deg,var(--primary),var(--secondary));color:var(--button-text);padding:6px 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:background .3s ease}.blog-detail-date{color:var(--primary);font-weight:500;font-size:.9rem;transition:color .3s ease}.blog-detail-read-time{color:var(--text-secondary);font-size:.9rem;transition:color .3s ease}.blog-detail-title{font-size:2.75rem;font-weight:700;color:var(--text);margin:0 0 .75rem;line-height:1.2;transition:color .3s ease}.blog-detail-subtitle{font-size:1.25rem;color:var(--primary);margin:0 0 1.5rem;font-style:italic;transition:color .3s ease}.blog-detail-tech-stack{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.tech-badge{background-color:#abb2bf14;color:var(--text-secondary);padding:8px 16px;font-size:.85rem;border:1px solid rgba(171,178,191,.19);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.blog-detail-hero{width:100%;max-width:800px;height:200px;margin:0 auto 3rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(171,178,191,.19);transition:border-color .3s ease}.hero-icon{font-size:6rem}.blog-detail-hero-image{width:100%;max-width:900px;margin:0 auto 3rem;border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.19);transition:border-color .3s ease}.blog-detail-hero-image .image-container,.blog-detail-hero-image .blog-hero-image{width:100%;min-height:300px;max-height:500px}.blog-detail-hero-image img,.blog-detail-hero-image .lazy-image{width:100%;height:auto;max-height:500px;object-fit:cover;display:block}.blog-detail-content{max-width:800px;margin:0 auto}.blog-highlights-box{background-color:var(--background-secondary);border:1px solid rgba(var(--primary-rgb),.25);border-left:4px solid var(--primary);padding:1.5rem 2rem;margin-bottom:3rem;transition:background-color .3s ease,border-color .3s ease}.blog-highlights-box h3{color:var(--primary);font-size:1.1rem;margin:0 0 1rem;font-weight:600;transition:color .3s ease}.blog-highlights-box ul{list-style:none;margin:0;padding:0}.blog-highlights-box li{color:#d1d5db;font-size:1rem;line-height:1.6;margin-bottom:.5rem;display:flex;align-items:flex-start;gap:.75rem}.highlight-check{color:#4ade80;font-weight:700;flex-shrink:0}.blog-main-content{margin-bottom:3rem}.blog-content-heading{font-size:1.75rem;color:var(--primary);font-weight:600;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid rgba(var(--primary-rgb),.25);transition:color .3s ease,border-color .3s ease}.blog-content-paragraph{color:#d1d5db;line-height:1.8;font-size:1.1rem;margin-bottom:1.5rem}.blog-content-list{color:#d1d5db;line-height:1.8;font-size:1.05rem;margin:1.5rem 0 1.5rem 1.5rem;padding-left:.5rem}.blog-content-list li{margin-bottom:.75rem;position:relative}.blog-content-list li::marker{color:var(--primary)}.blog-content-image{margin:2rem 0;border-radius:12px;overflow:hidden;border:1px solid rgba(171,178,191,.19);transition:border-color .3s ease}.blog-content-image .image-container,.blog-content-image .blog-content-img{width:100%;min-height:250px}.blog-content-image img,.blog-content-image .lazy-image{width:100%;height:auto;display:block;object-fit:cover}.blog-content-image figcaption{background:var(--background-secondary);color:var(--text-secondary);font-size:.9rem;padding:12px 16px;text-align:center;font-style:italic;border-top:1px solid rgba(171,178,191,.19);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.blog-code-block{background:#1a1a1a;border:1px solid rgba(171,178,191,.25);border-radius:8px;margin:1.5rem 0;overflow:hidden;transition:background-color .3s ease,border-color .3s ease}.code-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:var(--background-secondary);border-bottom:1px solid rgba(171,178,191,.19);transition:background-color .3s ease,border-color .3s ease}.code-language{color:var(--primary);font-size:.8rem;font-weight:600;text-transform:uppercase;transition:color .3s ease}.copy-btn{background-color:transparent;color:var(--text-secondary);border:1px solid rgba(171,178,191,.25);padding:4px 12px;font-size:.75rem;cursor:pointer;transition:color .3s ease,border-color .3s ease;font-family:inherit;min-width:65px}.copy-btn:hover{color:var(--text);border-color:var(--text-secondary)}.copy-btn.copied{color:var(--primary);border-color:var(--primary)}.blog-code-block pre{margin:0;padding:1.5rem;overflow-x:auto}.blog-code-block code{color:var(--text-secondary);font-family:Fira Code,Courier New,monospace;font-size:.9rem;line-height:1.6;transition:color .3s ease}.blog-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:2rem 0}.stat-item{background-color:var(--background-secondary);border:1px solid rgba(171,178,191,.19);padding:1.5rem;text-align:center;transition:background-color .3s ease,border-color .3s ease}.stat-value{display:block;color:#4ade80;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.85rem;transition:color .3s ease}.blog-author-section{display:flex;align-items:center;gap:1.5rem;padding:2rem;background-color:var(--background-secondary);border:1px solid rgba(171,178,191,.19);margin-bottom:3rem;transition:background-color .3s ease,border-color .3s ease}.author-avatar{width:70px;height:70px;background:linear-gradient(135deg,var(--primary),var(--secondary));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--button-text);font-weight:700;font-size:1.5rem;flex-shrink:0;transition:background .3s ease}.author-info h4{color:var(--text);font-size:1.1rem;margin:0 0 .5rem;transition:color .3s ease}.author-info p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:0;transition:color .3s ease}.related-blogs-section{max-width:900px;margin:4rem auto 0;padding-top:3rem;border-top:1px solid rgba(171,178,191,.25);transition:border-color .3s ease}.related-blogs-section h3{color:var(--text);font-size:1.5rem;margin:0 0 1.5rem;transition:color .3s ease}.related-blogs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.related-blog-card{display:flex;background-color:var(--background-card);border:1px solid rgba(171,178,191,.25);text-decoration:none;transition:all .3s ease,background-color .3s ease,border-color .3s ease;border-radius:12px;overflow:hidden}.related-blog-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:0 8px 25px #0003}.related-blog-image{width:140px;min-width:140px;height:100%;min-height:120px;overflow:hidden;background-color:var(--background-secondary)}.related-blog-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-blog-card:hover .related-blog-image img{transform:scale(1.05)}.related-blog-icon{width:140px;min-width:140px;height:120px;display:flex;align-items:center;justify-content:center;font-size:2rem}.related-blog-info{padding:1rem;flex:1;display:flex;flex-direction:column;justify-content:center}.related-blog-category{color:var(--primary);font-size:.75rem;font-weight:600;text-transform:uppercase;transition:color .3s ease}.related-blog-info h4{color:var(--text);font-size:1rem;margin:.5rem 0;line-height:1.4;transition:color .3s ease}.related-blog-meta{color:var(--text-secondary);font-size:.8rem;transition:color .3s ease}.animate-from-top,.animate-from-bottom{opacity:0;transition:all .6s ease-out}.animate-from-top{transform:translateY(-20px)}.animate-from-bottom{transform:translateY(20px)}.animate-visible{opacity:1!important;transform:translate(0) translateY(0)!important}@media (prefers-reduced-motion: reduce){.animate-from-top,.animate-from-bottom{opacity:1;transform:none;transition:none}}@media (max-width: 1200px){.blog-detail-section{padding:120px 4rem 40px}}@media (max-width: 992px){.blog-detail-section{padding:120px 2rem 40px}.blog-detail-title{font-size:2.25rem}}@media (max-width: 768px){.blog-detail-section{padding:40px 1rem 20px}.blog-detail-title{font-size:1.85rem}.blog-detail-subtitle{font-size:1.1rem}.blog-detail-meta{flex-direction:column;gap:.75rem}.blog-detail-hero{height:150px}.blog-detail-hero-image{border-radius:8px;margin-bottom:1.5rem}.blog-detail-hero-image .image-container,.blog-detail-hero-image .blog-hero-image{min-height:200px;max-height:300px}.blog-detail-hero-image img,.blog-detail-hero-image .lazy-image{max-height:300px}.hero-icon{font-size:4rem}.blog-content-heading{font-size:1.4rem}.blog-content-paragraph{font-size:1rem}.blog-highlights-box{padding:1.25rem 1.5rem}.blog-author-section{flex-direction:column;text-align:center;padding:1.5rem}.related-blogs-grid{grid-template-columns:1fr}.sticky-back-container{position:relative;top:0;left:0;margin-bottom:1.5rem}.back-to-blogs{padding:10px 18px;font-size:.85rem;gap:.5rem}.back-to-blogs .back-icon{font-size:1rem}.scroll-to-top-btn{bottom:80px;right:15px;width:45px;height:45px}.scroll-top-icon{font-size:1.25rem}}@media (max-width: 480px){.blog-detail-hero-image .image-container,.blog-detail-hero-image .blog-hero-image{min-height:150px;max-height:220px}.blog-detail-hero-image img,.blog-detail-hero-image .lazy-image{max-height:220px}.blog-detail-title{font-size:1.6rem}.blog-code-block pre{padding:1rem}.blog-code-block code{font-size:.8rem}.blog-stats-grid{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.25rem}}.blog-detail-layout{display:grid;grid-template-columns:280px 1fr;gap:3rem;max-width:1400px;margin:0 auto}.blog-detail-sidebar{position:relative}.blog-detail-sidebar .table-of-contents{position:sticky;top:120px}@media (max-width: 1199px){.blog-detail-layout{grid-template-columns:1fr;gap:0}.blog-detail-sidebar{display:none}}.blog-detail-actions{display:flex;align-items:center;gap:.5rem}.blog-print-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;transition:all .3s ease}.blog-print-btn:hover{background:rgba(var(--primary-rgb),.1);border-color:var(--primary);color:var(--primary)}.blog-print-btn svg{font-size:1.1rem}@media print{.navbar,.footer,.whatsapp-icon,.sticky-back-container,.scroll-to-top-btn,.table-of-contents,.blog-detail-sidebar,.reading-progress,.blog-actions,.related-blogs-section,.blog-author-section,.blog-share-section,.bookmark-btn,.blog-print-btn,.blog-detail-actions{display:none!important}body{background:#fff!important;color:#000!important}.blog-detail-section{padding:20px!important;background:#fff!important}.blog-detail-layout{display:block!important}.blog-detail-content{max-width:100%!important}.blog-detail-title{font-size:24pt!important;color:#000!important;margin-bottom:12pt!important}.blog-content-heading{font-size:16pt!important;color:#000!important;margin-top:18pt!important;margin-bottom:8pt!important;page-break-after:avoid}.blog-content-paragraph{font-size:11pt!important;color:#000!important;line-height:1.6!important}.blog-code-block{background:#f5f5f5!important;border:1px solid #ddd!important;page-break-inside:avoid}.blog-code-block pre{white-space:pre-wrap!important;word-wrap:break-word!important}.blog-code-block code{font-size:9pt!important;color:#000!important}.copy-button{display:none!important}.blog-content-image img,.blog-detail-hero-image img{max-width:100%!important;height:auto!important;page-break-inside:avoid}.blog-content-list{color:#000!important}.blog-content-list li:before{color:#000!important}.blog-highlights{background:#f9f9f9!important;border:1px solid #ddd!important;page-break-inside:avoid}.blog-highlights li{color:#000!important}.blog-detail-meta span{background:none!important;color:#666!important;border:1px solid #ccc!important}a{color:#000!important;text-decoration:underline!important}h2{page-break-after:avoid}figure,img,pre,blockquote{page-break-inside:avoid}}.contact-form-outer{padding:40px 7rem;color:var(--text-secondary);overflow:visible;min-height:calc(100vh - 200px);background-color:var(--background);transition:color .3s ease,background-color .3s ease}.contact-form-header{margin:0 0 1.5rem}.contact-form-header-inner{margin-bottom:2rem}.contact-form-header h2{font-size:2rem;color:var(--primary);font-weight:500;margin:0;transition:color .3s ease}.contact-form-header h2 span{color:var(--text);transition:color .3s ease}.contact-form-description-text{color:var(--text-secondary);font-size:1rem;margin:0 0 .5rem;transition:color .3s ease}.contact-form-section{display:flex;justify-content:center;width:100%}.contact-form-container{width:100%;max-width:600px}.contact-form-card{background-color:var(--background-card);border:1px solid var(--border);border-radius:8px;padding:35px 40px;transition:background-color .3s ease,border-color .3s ease}.contact-form-card:hover{border-color:var(--primary)}.contact-form{display:flex;flex-direction:column;gap:8px}.form-group{display:flex;flex-direction:column;margin-bottom:12px}.form-group label{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:.95rem;color:var(--text);font-weight:500;transition:color .3s ease}.form-icon{color:var(--primary);font-size:1.25rem;transition:color .3s ease}.contact-form input,.contact-form textarea{padding:14px 16px;font-size:1rem;border:1px solid var(--border);border-radius:6px;color:var(--text);background-color:var(--background-secondary);transition:all .3s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary);background-color:var(--background)}input:-webkit-autofill,textarea:-webkit-autofill{-webkit-box-shadow:0 0 0px 1000px var(--background-secondary) inset;-webkit-text-fill-color:var(--text);transition:background-color 5000s ease-in-out 0s}input:autofill,textarea:autofill{background-color:var(--background-secondary)!important;color:var(--text)!important}.contact-form textarea{resize:vertical;min-height:160px}.contact-form-submit{margin-top:15px;padding:16px 32px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:var(--button-text);cursor:pointer;font-size:1.05rem;font-weight:600;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.submit-icon{font-size:1.2rem;transform:rotate(90deg)}.submit-icon.spinning{transform:rotate(0);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.contact-form-submit.loading{opacity:.8;cursor:wait}.contact-form-submit:hover{box-shadow:0 4px 12px rgba(var(--primary-rgb),.25)}.contact-form-submit:disabled{opacity:.6;cursor:not-allowed}.contact-form-error-message{color:#ff6b6b;font-size:.85rem;margin-top:5px}.toast-notification{position:fixed;top:100px;right:30px;background:linear-gradient(135deg,var(--background-secondary),var(--background-card));border:1px solid var(--primary);padding:16px 24px 12px;border-radius:12px;min-width:280px;z-index:1000;box-shadow:0 8px 30px #0000004d;transition:background .3s ease,border-color .3s ease;overflow:hidden}.toast-content{display:flex;align-items:center;gap:12px;padding-right:24px}.toast-close-btn{position:absolute;top:8px;right:8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;border-radius:4px;transition:all .2s ease}.toast-close-btn:hover{color:var(--text);background:#ffffff1a}.toast-progress{position:absolute;bottom:0;left:0;height:3px;border-radius:0 0 12px 12px;transition:width .05s linear}.progress-success{background:#4ade80}.progress-error{background:#ff6b6b}.toast-success{border-color:#4ade80}.toast-error{border-color:#ff6b6b}.toast-notification .toast-icon{font-size:1.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-success .toast-icon{color:#4ade80}.toast-error .toast-icon{color:#ff6b6b}.toast-notification .toast-text{color:var(--text);font-size:.95rem;font-weight:500;transition:color .3s ease}@media (max-width: 768px){.toast-notification{top:80px;right:15px;left:15px;min-width:auto;padding:14px 18px 10px}}@media (max-width: 992px){.contact-form-outer{padding:40px 2rem}}@media (max-width: 768px){.contact-form-outer{padding:30px 1rem}.contact-form-container{width:100%;max-width:100%}.contact-form-card{padding:25px 20px}.contact-form textarea{min-height:130px}.contact-form-header h2{font-size:1.6rem}.form-icon{font-size:1.1rem}}.bookmarks-section{padding:40px 7rem;min-height:calc(100vh - 200px);background-color:var(--background);color:var(--text-secondary);transition:background-color .3s ease,color .3s ease}.bookmarks-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem}.bookmarks-header-inner h2{font-size:2rem;color:var(--primary);font-weight:500;margin:0}.bookmarks-header-inner h2 span{color:var(--text)}.bookmarks-description{color:var(--text-secondary);font-size:1rem;margin:.5rem 0 0}.clear-all-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-family:inherit;font-size:.9rem;cursor:pointer;transition:all .3s ease}.clear-all-btn:hover{border-color:var(--border-hover);color:var(--border-hover)}.no-bookmarks{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;background:var(--background-card);border:1px solid var(--border);border-radius:12px}.no-bookmarks-icon{font-size:4rem;color:var(--text-muted);margin-bottom:1.5rem}.no-bookmarks h3{font-size:1.5rem;color:var(--text);margin:0 0 .75rem}.no-bookmarks p{color:var(--text-secondary);max-width:400px;margin:0 0 1.5rem}.no-bookmarks-links{display:flex;gap:1rem}.browse-link{padding:.6rem 1.5rem;background:var(--primary);color:var(--button-text);text-decoration:none;border-radius:6px;font-size:.9rem;transition:all .3s ease}.browse-link:hover{background:var(--primary-hover);transform:translateY(-2px)}.bookmarks-category{margin-bottom:2.5rem}.bookmarks-category-title{font-size:1.1rem;color:var(--text);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.bookmarks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.bookmark-card{position:relative;background:var(--background-card);border:1px solid var(--border);border-radius:10px;overflow:visible;transition:all .3s ease}.bookmark-card:hover{border-color:var(--border-hover);transform:translateY(-3px);box-shadow:0 10px 30px #00000026}.bookmark-card-link{display:flex;text-decoration:none;color:inherit;width:100%}.bookmark-card-image{width:120px;min-width:120px;height:auto;aspect-ratio:16/10;overflow:hidden;border-radius:10px 0 0 10px}.bookmark-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.bookmark-card-image .lazy-image,.bookmark-card-image .image-container img{transition:transform .3s ease!important}.bookmark-card:hover .bookmark-card-image img,.bookmark-card:hover .bookmark-card-image .lazy-image,.bookmark-card:hover .bookmark-card-image .image-container img{transform:scale(1.05)}.bookmark-card-content{flex:1;padding:.85rem 1rem;display:flex;flex-direction:column;justify-content:center}.bookmark-card-category{font-size:.7rem;text-transform:uppercase;color:var(--primary);font-weight:600;letter-spacing:.5px}.bookmark-card-title{font-size:.95rem;color:var(--text);margin:.35rem 0;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bookmark-card-meta{font-size:.75rem;color:var(--text-muted);margin:0}.bookmark-card>.tooltip-wrapper{position:absolute;top:.5rem;right:.5rem;z-index:10}.bookmark-card .bookmark-btn{background:var(--background);border-radius:50%;padding:.4rem;box-shadow:0 2px 8px #0003}@media (max-width: 1024px){.bookmarks-section{padding:30px 3rem}}@media (max-width: 768px){.bookmarks-section{padding:20px 1rem}.bookmarks-header{flex-direction:column;gap:1rem}.bookmarks-header-inner h2{font-size:1.75rem}.bookmarks-grid{grid-template-columns:1fr}.bookmark-card-image{width:100px;min-width:100px;height:auto;aspect-ratio:16/10}}.main-layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}:root{--primary: #9ca3af;--primary-hover: #d1d5db;--primary-light: rgba(156, 163, 175, .1);--primary-rgb: 156, 163, 175;--secondary: #6b7280;--background: #1f2937;--background-secondary: #111827;--background-card: #1f2937;--background-hover: #374151;--text: #f9fafb;--text-secondary: #d1d5db;--text-muted: #9ca3af;--border: #4b5563;--border-hover: #9ca3af;--button-text: #111827}*{margin:0;padding:0;box-sizing:border-box;font-family:Fira Code,monospace}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}::-webkit-scrollbar-button:single-button{display:none;height:0;width:0}
