@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&display=swap";.navbar{position:fixed;top:0;left:0;right:0;z-index:50;transition:background-color .3s ease,box-shadow .3s ease}.navbar.scrolled{background-color:rgba(var(--surface-rgb),.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 10px #0000001a}.navbar-container{display:flex;align-items:center;justify-content:space-between;height:5rem;padding:0 1rem}.navbar-logo{display:flex;align-items:center;gap:.75rem}.logo-icon{height:1.75rem;width:1.75rem;color:var(--accent);animation:spin-slow 10s linear infinite}.logo-text{font-size:1.5rem;font-weight:800;letter-spacing:-.025em;background-clip:text;-webkit-background-clip:text;background-image:var(--text-gradient)}.nav-links{display:none}@media (min-width: 768px){.nav-links{display:flex;align-items:center;gap:1rem}}.nav-link{position:relative;padding:.5rem 1rem;font-weight:600;color:var(--text-secondary);transition:color .3s ease}.nav-link:hover{color:var(--text)}.nav-link.active{color:var(--accent)}.nav-link.active:after{content:"";position:absolute;bottom:-4px;left:.5rem;right:.5rem;height:2px;background-color:var(--accent)}.nav-actions{display:flex;align-items:center;gap:1rem}.theme-toggle,.mobile-menu-button{padding:.5rem;border-radius:.5rem;background-color:var(--glass);transition:background-color .3s ease}.theme-toggle:hover,.mobile-menu-button:hover{background-color:#ffffff1a}.auth-section .btn{display:none}@media (min-width: 768px){.auth-section .btn{display:inline-flex}}.user-menu{position:relative}.user-menu-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;background-color:var(--glass);cursor:pointer}.user-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-weight:600;border:2px solid var(--border)}.user-name{display:none}@media (min-width: 768px){.user-name{display:inline}}.user-dropdown{position:absolute;top:120%;right:0;width:200px;background-color:var(--surface);border:1px solid var(--border);border-radius:.5rem;box-shadow:0 4px 15px #0000001a;padding:.5rem}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.25rem;cursor:pointer;transition:background-color .2s ease}.dropdown-item:hover{background-color:#ffffff0d}.mobile-menu-button{display:block}@media (min-width: 768px){.mobile-menu-button{display:none}}.mobile-nav{position:absolute;top:100%;left:0;right:0;background-color:rgba(var(--surface-rgb),.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding:1rem}.mobile-nav-links{display:flex;flex-direction:column;gap:1rem}.mobile-nav-link{padding:.75rem 1rem;font-weight:600;border-radius:.25rem;transition:background-color .2s ease}.mobile-nav-link.active{background-color:var(--primary);color:#fff}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.home-container{min-height:100vh}.cta-card{text-align:center}.cta-card>*+*{margin-top:2rem}.cta-content>*+*{margin-top:1rem}.cta-description{font-size:1.125rem;line-height:1.75rem;color:var(--text-secondary);max-width:42rem;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.icon{width:1.25rem;height:1.25rem}.contact-info{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;padding-top:2rem}.contact-link{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);transition:color .3s ease}.contact-link:hover{color:var(--text)}.footer{border-top:1px solid var(--border)}.footer-content{align-items:center}.footer-brand>*+*{margin-left:.75rem}.footer-brand-name{font-size:1.25rem;line-height:1.75rem;font-weight:700}.footer-description{max-width:28rem}.social-links{display:flex;justify-content:flex-end;gap:1rem}.social-link{padding:.75rem;border-radius:.5rem;transition:all .3s ease}.social-link:hover{background-color:#ffffff4d}.footer-bottom{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border);text-align:center}.skills-header{text-align:center;margin-bottom:4rem}.skills-header>*+*{margin-top:1.5rem}.skills-description{font-size:1.125rem;line-height:1.75rem;color:var(--text-secondary);max-width:42rem;margin-left:auto;margin-right:auto}.category-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem}.category-tab{display:inline-flex;align-items:center;gap:.5rem}.skill-card-content>*+*{margin-top:1rem}.skill-card-header{display:flex;align-items:center;justify-content:space-between}.skill-name{font-size:1.125rem;line-height:1.75rem;font-weight:600;color:var(--text)}.skill-level{font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--primary)}.progress-bar-container{width:100%;background-color:var(--surface);border-radius:9999px;height:.5rem}.progress-bar{height:.5rem;background:var(--gradient-primary);border-radius:9999px}.skill-level-indicator{display:flex;align-items:center;gap:.5rem}.skill-level-dot{width:.5rem;height:.5rem;border-radius:9999px}.skill-level-text{font-size:.75rem;line-height:1rem;color:var(--text-secondary)}.additional-skills{margin-top:4rem}.additional-skills-content{text-align:center}.additional-skills-content>*+*{margin-top:1.5rem}.additional-skills-title{font-size:1.5rem;line-height:2rem;font-weight:700;color:var(--text)}.additional-skill-tag{padding:.5rem 1rem;background-color:var(--surface);border-radius:9999px;font-size:.875rem;line-height:1.25rem;color:var(--text-secondary);font-weight:500;border:1px solid var(--border);transition:all .3s ease}.additional-skill-tag:hover{border-color:var(--primary)}.hero-section{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-bg-pattern{position:absolute;inset:0;opacity:.1;z-index:-1}.hero-animated-bg{position:absolute;inset:0;z-index:-1}.hero-animated-circle1{position:absolute;top:5rem;left:5rem;width:16rem;height:16rem;background:var(--gradient-secondary);border-radius:9999px;filter:blur(72px)}.hero-animated-circle2{position:absolute;bottom:5rem;right:5rem;width:20rem;height:20rem;background:var(--gradient-accent);border-radius:9999px;filter:blur(72px)}.hero-content{align-items:center;gap:3rem}.hero-text-content>*+*{margin-top:2rem}.hero-text-inner>*+*{margin-top:1rem}.hero-greeting{font-size:1.125rem;line-height:1.75rem;font-weight:500;color:var(--text-secondary)}.hero-role-container{display:flex;align-items:center;gap:1rem}.hero-role{font-size:1.5rem;line-height:2rem;font-weight:600;color:var(--text)}.hero-role-indicator{width:.5rem;height:.5rem;background-color:var(--secondary);border-radius:9999px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.hero-description{font-size:1.125rem;line-height:1.75rem;color:var(--text-secondary);max-width:32rem;line-height:1.75}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}.hero-socials{display:flex;align-items:center;gap:1.5rem;padding-top:1rem}.hero-socials-label{color:var(--text-secondary);font-size:.875rem;line-height:1.25rem;font-weight:500}.hero-socials-links{display:flex;gap:1rem}.hero-social-link{padding:.5rem;border-radius:.5rem;transition:all .3s ease}.hero-social-link:hover{background-color:#ffffff4d}.hero-stats-grid{gap:1.5rem}.hero-stat>*+*{margin-top:.5rem}.hero-stat-number{font-size:1.875rem;line-height:2.25rem;font-weight:700}.hero-stat-label{font-size:.875rem;line-height:1.25rem;color:var(--text-secondary);font-weight:500}.scroll-indicator-text{color:var(--text-secondary);font-size:.875rem;line-height:1.25rem;font-weight:500}.scroll-indicator-box{width:1.5rem;height:2.5rem;border:2px solid var(--text-secondary);border-radius:9999px;display:flex;justify-content:center}.scroll-indicator-dot{width:.25rem;height:.75rem;background-color:var(--text-secondary);border-radius:9999px;margin-top:.5rem}.projects-header{text-align:center;margin-bottom:4rem}.projects-header>*+*{margin-top:1.5rem}.projects-header-description{font-size:1.125rem;line-height:1.75rem;color:var(--text-secondary);max-width:42rem;margin-left:auto;margin-right:auto}.project-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem}.project-card{cursor:pointer;overflow:hidden}.project-image-container{position:relative;height:12rem;overflow:hidden;border-radius:.5rem;margin-bottom:1.5rem}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card:hover .project-image{transform:scale(1.1)}.project-image-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent,transparent)}.project-category-badge{position:absolute;top:1rem;left:1rem}.project-category-badge span{padding:.25rem .75rem;background:var(--gradient-primary);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:9999px;font-size:.75rem;line-height:1rem;font-weight:600;color:#fff}.project-hover-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:1rem;opacity:0;transition:opacity .3s ease}.project-card:hover .project-hover-overlay{opacity:1}.project-hover-link{padding:.75rem;background-color:#fff3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:9999px;transition:all .3s ease}.project-hover-link:hover{background-color:#ffffff4d}.project-hover-link .icon{color:#fff}.project-content>*+*{margin-top:1rem}.project-title{font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--text);transition:color .3s ease}.project-description{color:var(--text-secondary);line-height:1.75}.project-tech-list{display:flex;flex-wrap:wrap;gap:.5rem}.project-tech-tag{padding:.25rem .75rem;background-color:var(--surface);border-radius:9999px;font-size:.75rem;line-height:1rem;color:var(--text-secondary);font-weight:500}.project-actions{display:flex;gap:.75rem;padding-top:1rem}.hero-section{position:relative;overflow:hidden;margin-top:5rem}.hero-bg-pattern{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.5;z-index:-1}.hero-animated-bg>div{position:absolute;border-radius:50%;background:var(--accent);z-index:-1}.hero-animated-circle1{width:30rem;height:30rem;top:-10rem;right:-10rem}.hero-animated-circle2{width:25rem;height:25rem;bottom:-10rem;left:-10rem}.hero-section .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero-content{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:3rem}.hero-text-content{display:flex;flex-direction:column;gap:1.5rem}.hero-greeting{color:var(--text-secondary)}.hero-role-container{display:flex;align-items:center;gap:.5rem}.hero-role{font-size:1.5rem;font-weight:600}.hero-description{color:var(--text-secondary);max-width:500px}.hero-buttons{display:flex;gap:1rem}.hero-socials{display:flex;align-items:center;gap:1rem}.hero-socials-label{color:var(--text-secondary)}.hero-socials-links{display:flex;gap:.75rem}.hero-social-link{padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.hero-stats-card{padding:2rem}.hero-stats-grid{display:grid;gap:1.5rem}.hero-stat{text-align:center}.hero-stat-number{font-size:2rem;font-weight:700}.hero-stat-number.primary{color:var(--primary)}.hero-stat-number.secondary{color:var(--secondary)}.hero-stat-number.success{color:var(--success)}.hero-stat-number.accent{color:var(--accent)}.hero-stat-label{color:var(--text-secondary);margin-top:.25rem}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-indicator-content{display:flex;flex-direction:column;align-items:center;gap:.5rem}.scroll-indicator-text{color:var(--text-secondary);font-size:.875rem}.scroll-indicator-box{width:1.5rem;height:2.5rem;border:2px solid var(--text-secondary);border-radius:1rem;position:relative}.scroll-indicator-dot{width:.5rem;height:.5rem;background:var(--text-secondary);border-radius:50%;position:absolute;left:50%;transform:translate(-50%);top:.25rem}@media (max-width: 1200px){h1.text-gradient{font-size:3.5rem}.hero-role{font-size:1.4rem}}@media (max-width: 992px){.hero-content{grid-template-columns:1fr;text-align:center;gap:2.5rem}.hero-text-content{align-items:center}.hero-description{max-width:600px;font-size:1.1rem}h1.text-gradient{font-size:3rem}}@media (max-width: 768px){.hero-section{padding:6rem 1rem}.hero-stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}h1.text-gradient{font-size:2.5rem}.hero-role{font-size:1.2rem}.hero-description{font-size:1rem}}@media (max-width: 576px){.hero-section{padding:4rem 1rem}.hero-buttons{flex-direction:column;width:100%;max-width:250px;gap:.75rem}.hero-buttons .btn{padding:.75rem 1rem;font-size:.9rem}.hero-socials{flex-direction:row;justify-content:center;gap:1rem}.social-icon svg{width:20px;height:20px}h1.text-gradient{font-size:2rem;line-height:1.2}.hero-role{font-size:1.1rem}.hero-description{font-size:.9rem}.hero-stat-number{font-size:1.3rem}.hero-stats-card{padding:1rem}.hero-text-content{gap:1.25rem}}@media (max-width: 420px){.hero-section{padding:3.5rem 1rem}h1.text-gradient{font-size:1.75rem}.hero-role{font-size:1rem}.hero-description{font-size:.85rem}.hero-stat-number{font-size:1.1rem}.hero-stat-label{font-size:.7rem}.hero-stats-card{padding:.75rem}.hero-buttons .btn{padding:.6rem 1rem;font-size:.85rem}.social-icon svg{width:18px;height:18px}}.skills-header{text-align:center;margin-bottom:3rem}.skills-description{color:var(--text-secondary);max-width:600px;margin:.5rem auto 0}.category-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:3rem}.category-tab{display:flex;align-items:center;gap:.5rem}.skill-card{padding:1.5rem}.skill-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem}.skill-name{font-size:1.125rem;font-weight:600}.skill-level{color:var(--text-secondary);font-size:.875rem}.progress-bar-container{width:100%;height:.5rem;background:var(--border);border-radius:.25rem;overflow:hidden;margin-bottom:1rem}.progress-bar{height:100%;background:var(--gradient-primary);border-radius:.25rem}.skill-level-indicator{display:flex;justify-content:space-between;align-items:center}.skill-level-dots{display:flex;gap:.25rem}.skill-level-dot{width:.75rem;height:.75rem;border-radius:50%;background-color:var(--border)}.skill-level-dot.filled{background-color:var(--primary)}.skill-level-text{color:var(--text-secondary);font-size:.875rem}.additional-skills{margin-top:4rem;text-align:center}.additional-skills-content{background:var(--surface);padding:2rem;border-radius:12px;border:1px solid var(--border)}.additional-skills-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.additional-skills-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.additional-skill-tag{background:var(--background);color:var(--text-secondary);padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;border:1px solid var(--border)}.about-page{padding-top:5rem}.about-hero{padding:5rem 1rem;text-align:center}.about-hero-title{font-size:3rem;font-weight:700;margin-bottom:1.5rem}@media (min-width: 768px){.about-hero-title{font-size:3.75rem}}.about-hero-description{font-size:1.25rem;color:var(--text-secondary);max-width:48rem;margin:0 auto;line-height:1.6}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:4rem}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-item{text-align:center}.stat-icon{font-size:2.5rem;color:var(--primary);margin:0 auto 1rem}.stat-number{font-size:2.25rem;font-weight:700}.stat-label{color:var(--text-secondary)}.timeline-section{padding:4rem 1rem}.timeline-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:4rem}.timeline-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s ease}.timeline-tab.active{background-color:var(--primary);color:#fff}.timeline-content{position:relative;max-width:48rem;margin:0 auto}.timeline-line{position:absolute;left:2rem;top:0;bottom:0;width:2px;background-color:var(--border)}@media (min-width: 768px){.timeline-line{left:50%;transform:translate(-50%)}}.timeline-item{position:relative;margin-bottom:2rem;display:flex}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:2rem;top:.25rem;transform:translate(-50%);width:1rem;height:1rem;border-radius:50%;border:4px solid var(--surface)}@media (min-width: 768px){.timeline-dot{left:50%}}.timeline-card-container{margin-left:3.5rem;width:100%}@media (min-width: 768px){.timeline-card-container{width:50%;padding-right:2rem;margin-left:0}.timeline-item:nth-child(2n) .timeline-card-container{margin-left:50%;padding-left:2rem;padding-right:0}}.timeline-card{background-color:var(--glass);padding:1.5rem;border-radius:.75rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-title{font-size:1.25rem;font-weight:700}.card-period{font-size:.875rem;font-weight:600}.card-subtitle{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);margin-bottom:.75rem}.card-description{line-height:1.6}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tech-tag{background-color:rgba(var(--primary-rgb),.1);color:var(--primary);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.projects-page{padding-top:5rem}.projects-hero{padding:5rem 1rem;text-align:center}.projects-hero-title{font-size:3rem;font-weight:700;margin-bottom:1.5rem}@media (min-width: 768px){.projects-hero-title{font-size:3.75rem}}.projects-hero-description{font-size:1.25rem;color:var(--text-secondary);max-width:48rem;margin:0 auto;line-height:1.6}@media (min-width: 1024px){.filters-container{flex-direction:row;align-items:center;justify-content:space-between}}.filters-wrapper{display:flex;flex-wrap:wrap;gap:1rem}.view-mode-toggle{display:flex;background-color:var(--glass);border-radius:.5rem;padding:.25rem}.view-mode-btn{padding:.5rem;border-radius:.375rem;color:var(--text-secondary);transition:all .2s ease}.view-mode-btn.active{background-color:var(--primary);color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.projects-list{display:flex;flex-direction:column;gap:1.5rem}.project-card{background-color:var(--glass);border-radius:.75rem;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}.project-card-list{display:flex}.project-image-container{position:relative;overflow:hidden}.project-card-grid .project-image-container{height:200px}.project-card-list .project-image-container{width:300px;flex-shrink:0}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-image{transform:scale(1.05)}.status-badge{position:absolute;bottom:1rem;right:1rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.status-completed{background-color:#4ade80cc}.status-in-progress{background-color:#fbbf24cc}.status-planning{background-color:#60a5facc}.category-badge{position:absolute;top:1rem;left:1rem;padding:.25rem .75rem;background-color:rgba(var(--primary-rgb),.8);border-radius:9999px;font-size:.75rem;font-weight:600}.project-content{padding:1.5rem}.project-card-list .project-content{flex:1}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.project-title{font-size:1.25rem;font-weight:700;transition:color .3s ease}.project-card:hover .project-title{color:var(--primary)}.project-date{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem}.project-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.project-meta{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{background-color:rgba(var(--surface-rgb),.5);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem}.action-buttons{display:flex;gap:.75rem}.blog-page{padding-top:5rem}.blog-hero{padding:5rem 1rem;text-align:center}.blog-hero-title{font-size:3rem;font-weight:700;margin-bottom:1.5rem}@media (min-width: 768px){.blog-hero-title{font-size:3.75rem}}.blog-hero-description{font-size:1.25rem;color:var(--text-secondary);max-width:48rem;margin:0 auto;line-height:1.6}.filters-container{margin-bottom:3rem;display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 768px){.filters-container{flex-direction:row;align-items:center;justify-content:space-between}}.search-bar-wrapper{position:relative;flex:1;max-width:28rem}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;background-color:var(--glass);border-radius:.5rem;color:var(--text-primary)}.search-input::placeholder{color:var(--text-secondary)}.filter-dropdown{position:relative}.filter-select{padding:.75rem 2.5rem .75rem 1rem;background-color:var(--glass);border-radius:.5rem;color:var(--text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none}.filter-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.featured-posts{margin-bottom:4rem}.featured-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 1024px){.featured-grid{grid-template-columns:2fr 1fr}}.featured-main-post{position:relative;border-radius:.75rem;overflow:hidden;min-height:400px;display:flex;align-items:flex-end}.featured-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}.featured-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);z-index:-1}.featured-content{padding:2rem}.featured-title{font-size:2.25rem;font-weight:700;margin-bottom:1rem;color:#fff}.featured-excerpt{color:var(--text-secondary);margin-bottom:1.5rem}.featured-side-posts{display:flex;flex-direction:column;gap:1.5rem}.side-post{background-color:var(--glass);border-radius:.75rem;padding:1.5rem}.side-post-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.post-meta{display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.meta-item{display:flex;align-items:center;gap:.5rem}.latest-articles-header{text-align:center;margin-bottom:3rem}.latest-articles-title{font-size:2.25rem;font-weight:700;margin-bottom:.5rem}.articles-count{color:var(--text-secondary)}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.article-card{background-color:var(--glass);border-radius:.75rem;overflow:hidden}.article-image-container{position:relative;height:200px}.article-category{position:absolute;top:1rem;left:1rem;padding:.25rem .75rem;background-color:rgba(var(--primary-rgb),.8);border-radius:9999px;font-size:.75rem;font-weight:600}.article-content{padding:1.5rem}.article-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.article-excerpt{color:var(--text-secondary);margin-bottom:1rem}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.article-tag{background-color:rgba(var(--surface-rgb),.5);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem}.contact-page{padding-top:5rem}.contact-hero{padding:5rem 1rem;text-align:center}.contact-hero-title{font-size:3rem;font-weight:700;margin-bottom:1.5rem}@media (min-width: 768px){.contact-hero-title{font-size:3.75rem}}.contact-hero-description{font-size:1.25rem;color:var(--text-secondary);max-width:48rem;margin:0 auto;line-height:1.6}.contact-content-section{padding:2rem 1rem}.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}@media (min-width: 1024px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-form-container,.contact-info-container{background-color:var(--glass);border-radius:1rem;padding:2rem}.contact-form-title,.contact-info-title{font-size:1.875rem;font-weight:700;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:600}.form-input,.form-textarea{width:100%;padding:.75rem 1rem;background-color:rgba(var(--surface-rgb),.5);border-radius:.5rem;color:var(--text-primary)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-secondary)}.form-error{color:var(--error);font-size:.875rem;margin-top:.5rem}.contact-form-container .btn-primary{width:100%}.contact-info-item{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.contact-info-icon{background-color:rgba(var(--primary-rgb),.1);padding:.75rem;border-radius:9999px;color:var(--primary)}.contact-info-details h3{font-weight:600}.contact-info-details a{color:var(--text-secondary)}.social-links-container{margin-top:2rem}.social-links-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.social-links{display:flex;gap:1rem}.social-link{padding:.75rem;background-color:var(--glass);border-radius:.5rem}.availability-status{margin-top:2rem;padding:1.5rem;background-color:var(--glass);border-radius:.75rem}.availability-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.availability-indicator{width:.75rem;height:.75rem;background-color:var(--success);border-radius:9999px}.availability-text{color:var(--success);font-weight:600}.availability-description{font-size:.875rem;color:var(--text-secondary)}.faq-section{padding:5rem 1rem}.faq-title{text-align:center;font-size:2.25rem;font-weight:700;margin-bottom:4rem}.faq-item{background-color:var(--glass);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.faq-question{font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.faq-answer{color:var(--text-secondary);line-height:1.6}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-form-container{width:100%;max-width:480px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:12px;padding:2rem;box-shadow:0 4px 14px #0000001a}.login-header{text-align:center;margin-bottom:1.5rem}.login-header h1{font-family:JetBrains Mono,Inter,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--text)}.login-header p{color:var(--text-secondary);margin-top:.5rem;font-size:.875rem}@media (min-width: 640px){.login-header p{font-size:1rem}}.login-form{display:flex;flex-direction:column;gap:.75rem}@media (max-width: 768px){.login-container{padding:1rem}}.admin-header{width:100%;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:90;height:4rem}.admin-user-info{display:flex;justify-content:space-between;position:relative;height:100%}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto}.header-title{font-size:1.5rem;font-weight:var(--font-bold);color:var(--text)}.user-details{display:flex;justify-content:center;align-items:center}.sidebar-toggle-btn,.mobile-toggle{display:none}@media (max-width: 768px){.sidebar{width:100%;max-width:16rem}.mobile-toggle{display:block}.admin-header{padding:.75rem 1rem}.header-content{flex-wrap:wrap;gap:.5rem}.header-title{font-size:1.25rem}.user-actions{flex-wrap:wrap;justify-content:flex-end}}.three-d-background-container{position:fixed;inset:0;z-index:-2;pointer-events:none}.admin-layout{min-height:100vh;background:var(--dark-background)}.sidebar{width:16rem;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100%;z-index:100}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:.5rem}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-secondary);font-weight:var(--font-semibold);border-radius:.5rem;transition:all .3s ease}.sidebar-link:hover{background:#3b82f626;color:var(--text)}[data-theme=dark] .sidebar-link:hover{background:#60a5fa26}.sidebar-link.active{background:var(--gradient-primary);color:var(--button-text)}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:var(--container-lg);margin:0 auto}.header-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);color:var(--text)}.user-actions{display:flex;align-items:center;gap:1rem}.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem}.admin-content-wrapper{padding:2rem 1.5rem}.admin-container{min-height:100vh}.admin-content{max-width:var(--container-lg);margin:0 auto;padding:0 1.5rem 5rem}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.dashboard-stats .stat-card{padding:1.5rem}.dashboard-stats .stat-card .icon-wrapper{padding:.75rem;border-radius:.5rem}.dashboard-recent{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.dashboard-recent .recent-item{padding:1rem}.dashboard-recent .recent-item .icon-wrapper{width:2.5rem;height:2.5rem}.dashboard-recent .status-badge{padding:.25rem .75rem;font-size:.75rem}.projects-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.projects-header{flex-direction:row;align-items:center;justify-content:space-between}}.projects-header h2{font-size:clamp(1.5rem,3vw,2rem)}.projects-header p{font-size:.875rem}.projects-header .add-btn{padding:.75rem 1.5rem;font-size:.875rem}.projects-filters{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.projects-filters{flex-direction:row;align-items:center}}.projects-filters .search-container{position:relative;flex:1;max-width:24rem}.projects-filters input,.projects-filters select{width:100%;padding:.75rem 1rem;font-size:.875rem}.projects-filters input{padding-left:2.5rem}.projects-filters .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.project-card{overflow:hidden}.project-card img{width:100%;height:12rem;object-fit:cover}.project-card .status-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:var(--font-semibold)}.project-card .content{padding:1.5rem}.project-card h3{font-size:1.125rem;margin-bottom:.5rem}.project-card p{font-size:.875rem;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card .actions{display:flex;align-items:center;justify-content:space-between}.project-card .action-btn{padding:.5rem}.project-card .date{font-size:.75rem}.blog-header,.contacts-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.blog-header,.contacts-header{flex-direction:row;align-items:center;justify-content:space-between}}.blog-header h2,.contacts-header h2{font-size:clamp(1.5rem,3vw,2rem)}.blog-header p,.contacts-header p{font-size:.875rem}.blog-header .add-btn{padding:.75rem 1.5rem;font-size:.875rem}.blog-search{position:relative}.blog-search input{width:100%;padding:.75rem 1rem .75rem 2.5rem;font-size:.875rem}.blog-search .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.blog-posts,.contacts-list{display:flex;flex-direction:column;gap:1rem}.blog-post,.contact-item{padding:1.5rem}.blog-post .content,.contact-item .content{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.blog-post h3,.contact-item h3{font-size:1.125rem;margin-bottom:.5rem}.blog-post p,.contact-item p{font-size:.875rem}.blog-post .meta,.contact-item .meta{display:flex;gap:1rem;font-size:.75rem;color:var(--text-secondary)}.blog-post .actions,.contact-item .actions{display:flex;gap:.5rem}.blog-post .action-btn,.contact-item .action-btn{padding:.5rem}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.analytics-card{padding:1.5rem}.analytics-card h3{font-size:1.25rem;margin-bottom:1rem}.analytics-card .metric{display:flex;justify-content:space-between;padding:.5rem 0}.analytics-card .activity-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.analytics-card .activity-dot{width:.5rem;height:.5rem;border-radius:50%}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.settings-card{padding:1.5rem}.settings-card h3{font-size:1.25rem;margin-bottom:1rem}.settings-card label{font-size:.875rem;color:var(--text-secondary)}.settings-card input,.settings-card select,.settings-card button{width:100%;padding:.75rem;font-size:.875rem}.admin-modal{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50}.admin-modal .modal-content{max-width:40rem;width:100%;max-height:90vh;overflow-y:auto;padding:2rem}.admin-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.admin-modal .modal-header h2{font-size:1.5rem}.admin-modal .modal-header button{padding:.5rem;font-size:1rem}.admin-modal form{display:flex;flex-direction:column;gap:1.5rem}.admin-modal .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.admin-modal label{font-size:.875rem;color:var(--text-secondary)}.admin-modal input,.admin-modal select,.admin-modal textarea{width:100%;padding:.75rem;font-size:.875rem}.admin-modal textarea{resize:none;min-height:6rem}.admin-modal .form-actions{display:flex;gap:1rem}.admin-modal .form-actions button{flex:1;padding:.75rem;font-size:.875rem}@media (max-width: 768px){.admin-main{margin-left:0}.mobile-toggle{display:block}.header-content{flex-wrap:wrap;gap:.5rem}.header-title{font-size:1.25rem}.user-actions{flex-wrap:wrap;justify-content:flex-end}.dashboard-stats,.projects-grid,.admin-modal .form-grid{grid-template-columns:1fr}}.protected-route-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom right,#0f172a,#4c1d95,#0f172a)}.protected-route-loading-content{text-align:center}.protected-route-spinner{height:3rem;width:3rem;color:#6366f1;animation:spin 1s linear infinite;margin:0 auto 1rem}.protected-route-loading-text{color:#d1d5db}.forgot-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}@media (max-width: 768px){.forgot-container{padding:.75rem}}.forgot-form-container{width:100%;max-width:480px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:12px;padding:2rem;box-shadow:0 4px 14px #0000001a}.forgot-header{text-align:center;margin-bottom:1.5rem}.forgot-header h1{font-family:JetBrains Mono,Inter,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--text)}.forgot-header p{color:var(--text-secondary);margin-top:.5rem;font-size:.875rem}@media (min-width: 640px){.forgot-header p{font-size:1rem}}.forgot-form{display:flex;flex-direction:column;gap:.75rem}.verify-otp-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}@media (max-width: 768px){.verify-otp-container{padding:.75rem}}.verify-otp-form-container{width:100%;max-width:480px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:12px;padding:2rem;box-shadow:0 4px 14px #0000001a}.verify-otp-header{text-align:center;margin-bottom:1.5rem}.verify-otp-header h1{font-family:JetBrains Mono,Inter,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--text)}.verify-otp-header p{color:var(--text-secondary);margin-top:.5rem;font-size:.875rem}@media (min-width: 640px){.verify-otp-header p{font-size:1rem}}.verify-otp-form{display:flex;flex-direction:column;gap:.75rem}.reset-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}@media (max-width: 768px){.reset-password-container{padding:.75rem}}@media (min-width: 640px){.login-container{padding:1.5rem}}.reset-password-form-container{width:100%;max-width:480px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:12px;padding:2rem;box-shadow:0 4px 14px #0000001a}.reset-password-header{text-align:center;margin-bottom:1.5rem}.reset-password-header h1{font-family:JetBrains Mono,Inter,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--text)}.reset-password-header p{color:var(--text-secondary);margin-top:.5rem;font-size:.875rem}@media (min-width: 640px){.reset-password-header p{font-size:1rem}}.status-message{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid}.status-message.success{background:#10b9811a;border-color:#10b9814d;color:var(--success)}.status-message.error{background:#ef44441a;border-color:#ef44444d;color:var(--error)}.status-message svg{width:1.25rem;height:1.25rem;flex-shrink:0}.status-message span{font-size:.875rem}.reset-password-form{display:flex;flex-direction:column;gap:.75rem}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:.375rem}.input-wrapper{position:relative}.input-wrapper svg{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:var(--text-secondary)}.input-wrapper input{width:100%;padding:.75rem 1rem .75rem 2.5rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:1rem;transition:all .3s ease}.input-wrapper input::placeholder{color:var(--text-secondary)}.input-wrapper input:focus{outline:none;border-color:transparent;box-shadow:0 0 0 2px var(--accent)}.password-toggle{position:absolute;right:3rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);transition:color .3s ease}.password-toggle:hover{color:var(--text)}.password-toggle svg{width:1.25rem;height:1.25rem}.form-actions{text-align:center}.form-actions p{font-size:.875rem;color:var(--text-secondary)}.form-actions a,.form-actions button{color:var(--link);font-weight:600;transition:color .3s ease}.form-actions a:hover,.form-actions button:hover{color:var(--accent)}.back-to-home{text-align:center}.back-to-home a{color:var(--text-secondary);font-size:.875rem;transition:color .3s ease}.back-to-home a:hover{color:var(--text)}.footer{background-color:var(--surface);padding-top:4rem;padding-bottom:2rem;border-top:1px solid var(--border)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:4rem}.footer-brand>*+*{margin-top:1rem}.footer-brand-name{font-size:1.75rem;font-weight:700}.footer-description{max-width:350px}.footer-links-column>*+*{margin-top:1rem}.footer-links-title{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:1.5rem}.footer-links-list{display:flex;flex-direction:column;gap:.75rem}.footer-link{color:var(--text-secondary);transition:color .3s ease}.footer-link:hover{color:var(--primary)}.social-links{display:flex;gap:1rem;margin-top:1.5rem}.social-link{padding:.5rem;border-radius:.5rem;transition:all .3s ease}.social-link:hover{background-color:#ffffff1a;transform:translateY(-2px)}.footer-bottom{border-top:1px solid var(--border);padding-top:2rem;text-align:center}@layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --color-red-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --text-xs: .75rem; --text-xs--line-height: calc(1 / .75); --text-sm: .875rem; --text-sm--line-height: calc(1.25 / .875); --text-base: 1rem; --text-base--line-height: 1.5 ; --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: 1.2 ; --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:--theme(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}:root{--light-background: #f5f7fa;--light-surface: #ffffff;--light-text: #23272f;--light-text-secondary: #5a6270;--light-accent: #7c3aed;--light-link: #2563eb;--light-button-text: #fff;--light-button-bg: #7c3aed;--light-border: #e5e7eb;--dark-background: #121212;--dark-surface: #1E1E1E;--dark-text: #E0E0E0;--dark-text-secondary: #A0A0A0;--dark-accent: #60A5FA;--dark-link: #93C5FD;--dark-button-text: #3B82F6;--dark-button-bg: #1E3A8A;--dark-border: #2A2A2A;--background: var(--light-background);--surface: var(--light-surface);--text: var(--light-text);--text-secondary: var(--light-text-secondary);--accent: var(--light-accent);--link: var(--light-link);--button-text: var(--light-button-text);--button-bg: var(--light-button-bg);--border: var(--light-border);--primary: var(--accent);--secondary: #06b6d4;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--gradient-primary: linear-gradient(135deg, var(--accent) 0%, var(--link) 100%);--gradient-secondary: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);--gradient-accent: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-card: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%)}[data-theme=dark]{--background: #181a20;--surface: #23272f;--text: #f3f4f6;--text-secondary: #a0aec0;--accent: #a78bfa;--link: #818cf8;--button-text: #fff;--button-bg: #7c3aed;--border: #23272f;--primary: #a78bfa}*{margin:0;padding:0;box-sizing:border-box;transition:background-color .3s ease,color .3s ease,border-color .3s ease}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--background);color:var(--text);line-height:1.6;font-weight:400;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:JetBrains Mono,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:700;line-height:1.2;letter-spacing:-.025em;color:var(--text)}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}h4{font-size:clamp(1.25rem,2.5vw,1.5rem)}p{font-size:1.125rem;line-height:1.7;color:var(--text-secondary)}code,pre,.code{font-family:JetBrains Mono,monospace;background:var(--surface);color:var(--accent);border-radius:6px;padding:.2em .5em;font-size:1em}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--gradient-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gradient-secondary)}.glass{background:#3b82f61a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(59,130,246,.2);border-radius:12px}[data-theme=dark] .glass{background:#60a5fa1a;border:1px solid rgba(96,165,250,.2)}.glass-strong{background:#3b82f626;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(59,130,246,.3);border-radius:16px}[data-theme=dark] .glass-strong{background:#60a5fa26;border:1px solid rgba(96,165,250,.3)}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.text-gradient-secondary{background:var(--gradient-secondary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.text-gradient-accent{background:var(--gradient-accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.btn-primary{background:var(--gradient-primary);border:none;color:#fff;font-weight:600;font-size:1rem;padding:.875rem 2rem;border-radius:8px;transition:all .3s ease;box-shadow:0 4px 14px #3b82f640;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}[data-theme=dark] .btn-primary{box-shadow:0 4px 14px #60a5fa40}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f659}[data-theme=dark] .btn-primary:hover{box-shadow:0 8px 25px #60a5fa59}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--button-bg);border:2px solid var(--border);color:var(--button-text);font-weight:600;font-size:1rem;padding:.875rem 2rem;border-radius:8px;transition:all .3s ease;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.btn-secondary:hover{border-color:var(--accent);background:#3b82f61a;transform:translateY(-2px)}[data-theme=dark] .btn-secondary:hover{background:#60a5fa1a}.btn-ghost{background:transparent;border:none;color:var(--text-secondary);font-weight:500;font-size:1rem;padding:.5rem 1.5rem;border-radius:8px;transition:all .3s ease;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.btn-ghost:hover{color:var(--text);background:#3b82f61a}[data-theme=dark] .btn-ghost:hover{background:#60a5fa1a}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;transition:all .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0000001a;border-color:var(--accent)}[data-theme=dark] .card:hover{box-shadow:0 20px 40px #0000004d}.card-glass{background:#3b82f61a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(59,130,246,.2);border-radius:16px;padding:2rem;transition:all .3s ease}[data-theme=dark] .card-glass{background:#60a5fa1a;border:1px solid rgba(96,165,250,.2)}.card-glass:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0000001a;background:#3b82f626}[data-theme=dark] .card-glass:hover{box-shadow:0 20px 40px #0000004d;background:#60a5fa26}.section{padding:6rem 0}.section-sm{padding:4rem 0}.section-lg{padding:3rem 0}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.container-sm{max-width:800px;margin:0 auto;padding:0 1.5rem}.container-lg{max-width:1400px;margin:0 auto;padding:0 1.5rem}.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:3rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-y-12>*+*{margin-top:3rem}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-x-6>*+*{margin-left:1.5rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.text-text{color:var(--text)}.text-text-secondary{color:var(--text-secondary)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-accent{background-color:var(--accent)}.bg-success{background-color:var(--success)}.bg-warning{background-color:var(--warning)}.bg-error{background-color:var(--error)}.bg-surface{background-color:var(--surface)}.bg-border{background-color:var(--border)}.fade-in{animation:fadeIn .6s ease-out}.slide-up{animation:slideUp .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.spinner{width:40px;height:40px;border:3px solid rgba(59,130,246,.1);border-left:3px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite}[data-theme=dark] .spinner{border:3px solid rgba(96,165,250,.1);border-left:3px solid var(--primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bg-pattern{background-image:radial-gradient(circle at 1px 1px,rgba(59,130,246,.1) 1px,transparent 0);background-size:40px 40px}[data-theme=dark] .bg-pattern{background-image:radial-gradient(circle at 1px 1px,rgba(96,165,250,.1) 1px,transparent 0)}.bg-gradient-hero{background:var(--gradient-hero)}.bg-gradient-card{background:var(--gradient-card)}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}.animate-spin-slow{animation:spin 4s linear infinite}
