.dark{--bg:#0b0f13;--fg:#e6edf3;--cyan:#00e5ff;--magenta:#ff2bd6;--muted:#94a3b8}html,body{background:#0b0f13;color:#e6edf3}body{padding-top:80px}.main-content{padding-top:0}.header{position:fixed!important;top:0!important;transform:none!important}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:4rem 1.5rem}.section-title{font-size:2rem;font-weight:800;margin:0 0 .5rem;text-align:center;background:linear-gradient(90deg,#00e5ff 0%,#ff2bd6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.section-subtitle{text-align:center;color:#94a3b8;margin:0 0 2rem;font-size:1.1rem}.hero{position:relative;padding:6rem 1.5rem;text-align:center}.hero-bg{position:absolute;inset:0;background:radial-gradient(600px circle at 20% 20%,rgba(0,229,255,.14),transparent 60%),radial-gradient(800px circle at 80% 30%,rgba(255,43,214,.12),transparent 60%),linear-gradient(180deg,rgba(255,255,255,2%),rgba(0,0,0,.2));filter:blur(36px)saturate(120%);animation:pulseGlow 8s ease-in-out infinite}.hero-content{position:relative;max-width:960px;margin:0 auto}.hero h1{font-size:2rem;margin:0 0 1rem}.hero-title{font-size:2.4rem;font-weight:800;background:linear-gradient(90deg,#00e5ff 0%,#ff2bd6 100%);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.5px;margin-bottom:.75rem}.hero .sub{color:#94a3b8;margin-bottom:1rem}.hero-badges{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1rem}.btn{display:inline-block;padding:.6rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#e6edf3;text-decoration:none}.btn.primary{background:linear-gradient(90deg,#00e5ff,#ff2bd6);color:#000;font-weight:700}.badge{padding:.25rem .5rem;border-radius:999px;font-size:.85rem}.badge-cyan{background:rgba(0,229,255,.15);color:#00e5ff}.badge-magenta{background:rgba(255,43,214,.15);color:#ff2bd6}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.project-card{padding:1rem;background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.75rem;text-decoration:none;color:inherit}.project-card .title{font-weight:700;margin-bottom:.25rem}.project-card .desc{color:#94a3b8;margin-bottom:.5rem}.project-card .meta{display:flex;gap:.5rem;color:#94a3b8;font-size:.85rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.stat{padding:.75rem;background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.5rem}.stat .label{color:#94a3b8;font-size:.85rem}.stat .value{font-size:1.25rem;font-weight:700}.terminal{background:#0a0c10;border:1px solid rgba(255,255,255,6%);padding:.75rem;border-radius:.5rem;overflow:auto}@keyframes pulseGlow{0%,100%{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}.copycode{position:relative}.copy-btn{position:absolute;top:.5rem;right:.5rem;background:rgba(255,255,255,6%);color:#e6edf3;border:1px solid rgba(255,255,255,.1);padding:.25rem .5rem;border-radius:.4rem;cursor:pointer}.pill-nav ul{list-style:none;display:flex;gap:.5rem;padding:0;margin:0 0 1rem;flex-wrap:wrap}.pill{display:inline-block;padding:.4rem .8rem;border-radius:999px;background:rgba(255,255,255,6%);color:#e6edf3;text-decoration:none;border:1px solid rgba(255,255,255,8%)}.terminal-section{padding:4rem 1.5rem;background:rgba(0,0,0,.2)}.terminal-window{background:#0a0c10;border:1px solid rgba(0,229,255,.2);border-radius:.75rem;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 0 1px rgba(0,229,255,.1);max-width:900px;margin:0 auto 1.5rem}.terminal-header{background:rgba(255,255,255,3%);padding:.5rem 1rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid rgba(255,255,255,6%)}.terminal-buttons{display:flex;gap:.4rem}.terminal-btn{width:12px;height:12px;border-radius:50%;display:inline-block}.terminal-btn-close{background:#ff5f56}.terminal-btn-minimize{background:#ffbd2e}.terminal-btn-maximize{background:#27c93f}.terminal-title{color:#94a3b8;font-size:.85rem;font-family:courier new,monospace;margin-left:auto}.terminal-body{padding:1rem;min-height:300px;max-height:500px;overflow-y:auto;font-family:courier new,monaco,monospace;font-size:.9rem;line-height:1.6}.terminal-content{color:#e6edf3}.terminal-line{margin-bottom:.25rem;display:flex;align-items:flex-start;gap:.5rem}.terminal-prompt{color:#00e5ff;font-weight:600;user-select:none}.terminal-command{color:#e6edf3}.terminal-output{color:#94a3b8;padding-left:1rem}.terminal-cursor{display:inline-block;background:#00e5ff;width:2px;animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,100%{opacity:0}}.terminal-controls{display:flex;justify-content:center;gap:.75rem;margin-top:1rem}.terminal-controls .btn{background:rgba(255,255,255,3%);border:1px solid rgba(0,229,255,.3);border-radius:.5rem;color:#00e5ff;padding:.5rem 1rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.terminal-controls .btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,229,255,.2),transparent);transition:left .5s ease}.terminal-controls .btn:hover::before{left:100%}.terminal-controls .btn:hover{background:rgba(0,229,255,.1);border-color:#00e5ff;color:#00e5ff;box-shadow:0 0 15px rgba(0,229,255,.3);transform:translateY(-2px)}.terminal-controls .btn:active{transform:translateY(0);box-shadow:0 0 10px rgba(0,229,255,.2)}.terminal-controls .btn i{margin-right:.4rem}.terminal-controls .btn.active{background:rgba(0,229,255,.15);border-color:#00e5ff;color:#00e5ff;box-shadow:0 0 20px rgba(0,229,255,.4)}.terminal-controls .btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-small{padding:.4rem .8rem;font-size:.85rem}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:rgba(255,255,255,2%)}.terminal-body::-webkit-scrollbar-thumb{background:rgba(0,229,255,.3);border-radius:4px}.terminal-body::-webkit-scrollbar-thumb:hover{background:rgba(0,229,255,.5)}.github-section{padding:4rem 1.5rem}.github-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.github-card{background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.75rem;padding:1.5rem}.github-card-wide{grid-column:1/-1}.github-card h3{margin:0 0 1rem;color:#e6edf3;font-size:1.1rem}.github-graph{min-height:150px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2);border-radius:.5rem;padding:1rem;margin-bottom:1rem}.github-contributions-svg{width:100%;height:auto}.github-username{text-align:center;margin-top:1rem;color:#94a3b8;font-size:.9rem}.github-username a{color:#00e5ff;text-decoration:none}.github-username a:hover{color:#ff2bd6;text-decoration:underline}.github-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-item{text-align:center;padding:1rem;background:rgba(0,0,0,.2);border-radius:.5rem}.stat-item .stat-label{color:#94a3b8;font-size:.85rem;margin-bottom:.5rem}.stat-item .stat-value{color:#00e5ff;font-size:1.5rem;font-weight:700}.repos-list{display:grid;gap:1rem}.repo-card{background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,6%);border-radius:.5rem;padding:1rem;transition:all .2s ease}.repo-card:hover{border-color:rgba(0,229,255,.3);transform:translateY(-2px)}.repo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.repo-name{color:#00e5ff;text-decoration:none;font-weight:600;display:flex;align-items:center;gap:.5rem}.repo-name:hover{color:#ff2bd6}.repo-stats{display:flex;gap:.75rem}.repo-stat{color:#94a3b8;font-size:.85rem;display:flex;align-items:center;gap:.25rem}.repo-description{color:#94a3b8;font-size:.9rem;margin:.5rem 0;line-height:1.5}.repo-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,6%)}.repo-language{color:#00e5ff;font-size:.85rem}.repo-updated{color:#94a3b8;font-size:.8rem}.loading-text,.error-text{color:#94a3b8;text-align:center;padding:2rem}.error-text{color:rgba(255,43,214,.8)}.performance-section{padding:4rem 1.5rem;background:rgba(0,0,0,.15)}.performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.performance-card{background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.75rem;padding:1.5rem}.performance-card h3{margin:0 0 1.5rem;color:#e6edf3;font-size:1.1rem}.lighthouse-scores{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.score-item{text-align:center}.score-label{color:#94a3b8;font-size:.85rem;margin-bottom:.75rem}.score-circle{position:relative;width:80px;height:80px;margin:0 auto}.score-chart{width:100%;height:100%;transform:rotate(-90deg)}.score-bg{fill:none;stroke:rgba(255,255,255,.1);stroke-width:3}.score-value{fill:none;stroke:#00e5ff;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .3s ease}.score-circle[data-score="100"] .score-value{stroke:#00e5ff}.score-circle[data-score="95"] .score-value{stroke:#00e5ff}.score-circle[data-score="90"] .score-value{stroke:rgba(0,229,255,.8)}.score-circle[data-score="80"] .score-value{stroke:rgba(255,43,214,.8)}.score-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.25rem;font-weight:700;color:#00e5ff}.vitals-list{display:flex;flex-direction:column;gap:1rem}.vital-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:rgba(0,0,0,.2);border-radius:.5rem}.vital-label{display:flex;flex-direction:column;gap:.25rem}.vital-label>span:first-child{font-weight:600;color:#e6edf3}.vital-name{font-size:.8rem;color:#94a3b8}.vital-value{font-size:1.25rem;font-weight:700;color:#00e5ff}.vital-value.good{color:#00e5ff}.vital-value.needs-improvement{color:rgba(255,43,214,.8)}.vital-value.poor{color:#ff2bd6}.site-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.site-stat{display:flex;align-items:center;gap:1rem;padding:1rem;background:rgba(0,0,0,.2);border-radius:.5rem}.stat-icon{font-size:1.5rem;color:#00e5ff}.stat-info{flex:1}.stat-value{font-size:1.1rem;font-weight:700;color:#e6edf3;margin-bottom:.25rem}.stat-label{font-size:.8rem;color:#94a3b8}.performance-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,6%)}.performance-footer p{color:#94a3b8;margin-bottom:1rem}.project-page{min-height:100vh}.project-header{padding:4rem 1.5rem 2rem;background:rgba(0,0,0,.2);border-bottom:1px solid rgba(255,255,255,6%)}.breadcrumb{margin-bottom:1rem;color:#94a3b8;font-size:.9rem}.breadcrumb a{color:#00e5ff;text-decoration:none}.breadcrumb a:hover{color:#ff2bd6}.project-title{font-size:2.5rem;font-weight:800;margin:0 0 .5rem;background:linear-gradient(90deg,#00e5ff 0%,#ff2bd6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.project-subtitle{font-size:1.2rem;color:#94a3b8;margin:0 0 1.5rem}.project-meta{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.tech-stack{display:flex;flex-wrap:wrap;gap:.5rem}.tech-badge{padding:.4rem .8rem;background:rgba(0,229,255,.15);color:#00e5ff;border-radius:999px;font-size:.85rem;border:1px solid rgba(0,229,255,.2)}.project-date{color:#94a3b8;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.project-link{color:#00e5ff;text-decoration:none;display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border:1px solid rgba(0,229,255,.3);border-radius:.5rem;transition:all .2s ease}.project-link:hover{background:rgba(0,229,255,.1);border-color:#00e5ff;color:#ff2bd6}.project-content{padding:3rem 1.5rem}.project-section{margin-bottom:3rem}.project-section h2{font-size:1.5rem;margin:0 0 1rem;color:#e6edf3;display:flex;align-items:center;gap:.5rem}.section-icon{font-size:1.2rem}.content-box{background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.75rem;padding:1.5rem;margin-top:1rem}.content-body{line-height:1.8;color:#e6edf3}.content-body p{margin-bottom:1rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.metric-card{background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,6%);border-radius:.75rem;padding:1.5rem;text-align:center}.metric-value{font-size:2rem;font-weight:800;color:#00e5ff;margin-bottom:.5rem;background:linear-gradient(90deg,#00e5ff 0%,#ff2bd6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.metric-label{font-size:1rem;font-weight:600;color:#e6edf3;margin-bottom:.5rem}.metric-desc{font-size:.85rem;color:#94a3b8}.code-example{margin:1.5rem 0;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,6%);border-radius:.5rem;overflow:hidden}.code-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:rgba(0,0,0,.2);border-bottom:1px solid rgba(255,255,255,6%)}.code-title{color:#e6edf3;font-weight:600}.code-language{color:#94a3b8;font-size:.85rem;padding:.25rem .5rem;background:rgba(255,255,255,5%);border-radius:.25rem}.code-content{padding:1rem;overflow-x:auto}.architecture-img{width:100%;height:auto;border-radius:.5rem;margin-top:1rem}.project-footer{padding:3rem 1.5rem;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,6%)}.project-cta{text-align:center;max-width:600px;margin:0 auto}.project-cta h3{font-size:1.5rem;margin:0 0 .5rem;color:#e6edf3}.project-cta p{color:#94a3b8;margin-bottom:1.5rem}.layered-topology-svg{width:100%;height:800px;min-height:600px}.layered-topology-svg .layer-group .layer-background{transition:opacity .3s ease}.layered-topology-svg .layer-group .layer-label{text-shadow:0 0 10px currentColor;font-family:inter,-apple-system,sans-serif;letter-spacing:1px}.layered-topology-svg .service-card{transition:transform .2s ease}.layered-topology-svg .service-card:hover{transform:translateY(-5px)}.layered-topology-svg .service-card .card-background{transition:all .3s ease;backdrop-filter:blur(10px)}.layered-topology-svg .service-card .card-background:hover{box-shadow:0 8px 32px rgba(0,229,255,.3)}.layered-topology-svg .service-card .service-icon{filter:drop-shadow(0 0 8px currentColor)}.layered-topology-svg .service-card .service-name{font-family:inter,-apple-system,sans-serif}.layered-topology-svg .service-card .status-indicator{filter:drop-shadow(0 0 4px currentColor);animation:pulse 2s infinite}.layered-topology-svg .service-card .metrics-summary text{font-family:monaco,menlo,monospace;font-size:10px}.layered-topology-svg .connections .connection{transition:all .3s ease;stroke-linecap:round}.layered-topology-svg .connections .connection:hover{stroke-opacity:1}.topology-tooltip{pointer-events:none;font-family:inter,-apple-system,sans-serif;line-height:1.6;max-width:280px}.topology-tooltip div{word-wrap:break-word}.network-topology-section .network-container{position:relative;background:rgba(0,0,0,.2);border-radius:12px;padding:2rem;margin-top:2rem;border:1px solid rgba(255,255,255,5%)}.network-topology-section #network-topology-container{width:100%;height:800px;min-height:600px;position:relative;overflow:visible}.network-topology-section #network-topology-container .network-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#94a3b8}.network-topology-section #network-topology-container .network-loading .loading-spinner{width:40px;height:40px;border:3px solid rgba(0,229,255,.2);border-top-color:#00e5ff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.network-topology-section #network-topology-container .network-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#ff6b6b;text-align:center;padding:2rem}.network-topology-section #network-topology-container .network-error div{margin:.5rem 0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}