@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Doto:wght@300;400;700&display=swap";*{font-family:Inter,sans-serif}:root{font-family:Inter,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffe6;background-color:#121212;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,.name,.section-title{font-family:Doto,monospace!important}a{font-weight:500;color:#47ffdd;text-decoration:inherit;transition:color .3s ease}a:hover{color:#d547b2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:4px;border:1px solid transparent;padding:10px 20px;font-size:1em;font-weight:600;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@-moz-document url-prefix(){.card,.profile-widget,.heatmap-container,.project-modal{-webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important}}.badges-slider{width:100%;overflow:hidden;margin-top:20px;height:120px;position:relative}.badges-track{display:flex;width:max-content;animation:scroll 20s linear infinite;gap:24px;align-items:center}.badges-track img{height:120px;object-fit:contain;border-radius:6px;box-shadow:0 0 6px #ffffff4d;transition:transform .3s}.badges-track img:hover{transform:scale(1.1)}.cert-link{color:teal;text-decoration:none}.cert-link:hover{color:#7fffd4}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.tech-skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:15px}.skill-category{background:#0a0a0a66;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:15px;transition:all .3s ease}.skill-category:hover{border-color:#ffffff4d;box-shadow:0 0 15px #ffffff1a,inset 0 0 10px #ffffff0d;background:#ffffff0a}.category-title{font-size:1.1em;font-weight:700;color:#0fc;margin-top:0;margin-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:5px}.badge-grid{display:flex;flex-wrap:wrap;gap:10px}.skill-badge{height:28px;border-radius:4px;transition:transform .2s ease}.skill-badge:hover{transform:scale(1.05)}*{font-family:Doto Sans,sans-serif;box-sizing:border-box}body{margin:0;padding:0;height:100vh;background-color:#121212;overflow:auto;display:flex;align-items:center}.container{width:90%;max-width:1000px;height:90vh;display:flex;justify-content:center;align-items:center}.card{background:#0a0a0a33;backdrop-filter:blur(2px) url(#ca-glass);-webkit-backdrop-filter:blur(2px) url(#ca-glass);border:1px solid rgba(255,255,255,.1);color:#ffffffe6;width:100%;height:88%;padding:40px;border-radius:8px;box-shadow:0 8px 32px #00000080;overflow-y:auto;text-align:left;scrollbar-width:thin;-ms-overflow-style:none}.card::-webkit-scrollbar{width:6px}.card::-webkit-scrollbar-thumb{background-color:#fff3;border-radius:4px}.card::-webkit-scrollbar-thumb:hover{background-color:#fff6}h1{margin-top:0;font-size:2em}.section-title{font-weight:700;margin-top:20px;font-size:1.2em}.project-card{margin-bottom:30px;padding:24px;border-radius:4px;border:1px solid rgba(255,255,255,.1);background:#ffffff05;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:all .3s ease;box-shadow:0 4px 12px #0003}.project-card:hover{border-color:#ffffff4d;box-shadow:0 0 15px #ffffff1a,inset 0 0 10px #ffffff0d;background:#ffffff0a}.project-card:active,.project-card h2{margin:0 0 10px;font-size:1.3em;color:#7fffd4}.project-card p{margin:0;line-height:1.6;font-size:1em;color:#e0e0e0}@media (max-width: 768px){.container{width:95%;height:100vh;padding:10px}.card{padding:20px;font-size:14px}.project-card h2{font-size:1.1em}.project-card p{font-size:.95em}}@media (max-width: 480px){.card{padding:16px;font-size:13px}}.project-card.clickable{cursor:pointer}.read-more{display:block;margin-top:10px;font-size:.85em;color:teal;opacity:0;transition:opacity .3s ease}.project-card:hover .read-more{opacity:1}.project-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .2s ease}.project-modal{background:#0a0a0a66;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:1px solid rgba(255,255,255,.1);padding:25px;border-radius:8px;display:flex;flex-direction:column;width:90%;max-height:80vh;overflow-y:auto;position:relative;animation:slideUp .3s cubic-bezier(.16,1,.3,1);box-shadow:0 20px 40px #0009}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-modal h2{color:#7fffd4;margin:0 0 20px;padding-right:40px;font-size:1.5em}.modal-content{color:#e0e0e0;line-height:1.8}.modal-content p{white-space:pre-wrap}.modal-close{position:absolute;top:15px;right:20px;background:none;border:none;color:#888;font-size:2em;cursor:pointer;transition:color .2s}.modal-close:hover{color:#fff}.project-link{display:inline-block;margin-top:20px;padding:10px 20px;height:40px;background:#fff;color:#000;border:none;border-radius:4px;font-family:Doto,sans-serif;transition:background .2s}.project-link:hover{background:#066}body{height:100vh;padding:0;border:none;overflow:hidden;position:relative;background-color:transparent}.fade-in{opacity:0;animation:fadeIn 2s forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.container{display:flex;flex-direction:row;height:100%;width:100%}.left-section{flex:0 0 250px;padding:20px;color:#fff;font-weight:700;display:flex;flex-direction:column;justify-content:flex-start;position:absolute;top:20px;left:-80px}.audio-toggle-wrapper{display:flex;justify-content:center;padding-top:1rem}.sound-toggle{background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;transition:transform .2s ease}.sound-toggle:hover{transform:scale(1.2)}.card h1,.card h2,.card h3{margin:0}.card p{margin:10px 0}.section-title{font-size:1.2em;margin-top:20px;border-bottom:2px solid #fff;padding-bottom:5px}.skills-list,.languages-list{list-style-type:none;padding:0}.skills-list li,.languages-list li{margin:5px 0}.cursor{display:inline-block;width:10px;height:17px;background-color:#ffffffad;animation:blink 1s infinite step-end;margin-left:0}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}#noiseCanvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}#loader{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;display:flex;justify-content:center;align-items:center;z-index:9999}.pulse-dot{width:50px;height:50px;background-color:#47ffdd;border-radius:50%;animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(1);opacity:.7}50%{transform:scale(1.5);opacity:1}to{transform:scale(1);opacity:.7}}nav{position:fixed;bottom:30px;right:2%;left:auto;width:auto;z-index:1000;display:flex;justify-content:flex-end;align-items:center}.nav-separator{color:#fff6;font-size:1.1em;-webkit-user-select:none;user-select:none;margin:0 -5px}.active-link span{color:#80006b;font-weight:700;text-shadow:0 0 1px rgb(236,4,201);transition:all .3s ease}nav ul{display:flex;flex-direction:row;gap:20px;list-style:none;padding:0;margin:0;justify-content:center;align-items:center}nav ul li{margin:0;padding:0;position:relative}nav ul li a{text-decoration:none;color:#e0e0e0;font-size:1.1em;transition:opacity .3s,text-shadow .3s}.dot-link{display:inline-block;margin:-3px 8px 0;width:17px;height:17px;border-radius:50%;background-color:#599b99;cursor:pointer;vertical-align:middle;transition:background-color .3s;animation:colourShift 5s infinite alternate ease-in-out}.dot-link:hover{animation:none!important;background-color:#47ffdd}@keyframes colourShift{0%{background-color:#599b99}50%{background-color:purple}to{background-color:#599b99}}@media (max-width: 1024px){.container{flex-direction:column}.left-section{position:relative;top:0;left:0;width:100%;padding:15px}.card,.card2{max-width:100%;position:relative;right:0;left:0;margin:20px}}@media (max-width: 768px){body,.container,.card,.card2,.left-section,h1,h2,p,nav{font-family:Doto,sans-serif!important}body{overflow:auto}.container{flex:1;padding-bottom:40px}nav{position:relative;margin-top:auto;background-color:#000;padding:60px 0}.card,.card2{padding:16px 12px;width:100%;max-width:100%;margin:8px auto;height:auto;overflow-y:auto}.card{max-height:none}nav{position:fixed;bottom:12px;left:0;right:auto;width:100%;z-index:999;background:transparent;display:flex;justify-content:center}.name{font-size:1.6em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;display:inline-block}.role{font-size:1.2em;width:100%;display:inline-block}.left-section{padding:6px;font-size:.9em;text-align:left}.section-title{font-size:1.1em}.languages-list li,.skills-list li{margin-bottom:6px}h1{font-size:1.6em}}.hidden{display:none!important}*{font-family:Doto,sans-serif}body{font-family:Doto,sans-serif;margin:0;padding:0;height:100vh;overflow:hidden;background-color:transparent;position:relative}.container{position:absolute;top:4px;left:50%;transform:translate(-50%);bottom:80px;width:90vw;max-width:1300px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start}.card{background:#0a0a0a33;backdrop-filter:blur(2px) url(#ca-glass);-webkit-backdrop-filter:blur(2px) url(#ca-glass);border:1px solid rgba(255,255,255,.1);color:#ffffffe6;width:100%;height:88%;padding:40px;border-radius:8px;box-shadow:0 8px 32px #00000080;overflow-y:auto;box-sizing:border-box;text-align:left;scrollbar-width:none;-ms-overflow-style:none}.lang-name{color:#0fc;font-weight:700}.date-text{color:#ff0090;font-weight:700}.card::-webkit-scrollbar{display:none}h1{margin-top:0;text-align:left}.section-title{font-weight:700;margin-top:25px;font-size:1.3em;text-align:left}.languages-list,.skills-list{list-style-type:none;padding-left:0}.languages-list li,.skills-list li{margin-bottom:10px}@media (max-width: 768px){.container{width:95vw;bottom:70px}.card{padding:20px 16px;font-size:14px}.section-title{font-size:1.1em}}.profiles-grid{display:flex;flex-wrap:wrap;gap:20px;margin-top:15px}.profile-widget{background:#0a0a0a66;backdrop-filter:blur(2px) url(#ca-glass);-webkit-backdrop-filter:blur(2px) url(#ca-glass);border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:15px;display:flex;align-items:center;gap:15px;cursor:pointer;transition:all .3s ease;flex:1;min-width:250px;text-decoration:none;color:#fff;box-shadow:0 4px 12px #0000004d}.profile-widget:hover{border-color:#ffffff4d;box-shadow:0 0 15px #ffffff1a,inset 0 0 10px #ffffff0d;background:#ffffff0a}.profile-avatar{width:60px;height:60px;border-radius:4px;border:2px solid rgba(255,255,255,.2);object-fit:cover;flex-shrink:0;transition:all .3s ease}.linkedin-icon-wrapper{background:#0a66c2cc;display:flex;align-items:center;justify-content:center}.profile-widget:hover .profile-avatar{border-color:#fff6}.profile-info{display:flex;flex-direction:column}.profile-name{font-weight:700;font-size:1.1em;margin-bottom:5px}.profile-bio{font-size:.85em;color:#ccc;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.heatmap-container{margin-top:15px;padding:15px;background:#0a0a0a66;backdrop-filter:blur(2px) url(#ca-glass);-webkit-backdrop-filter:blur(2px) url(#ca-glass);border:1px solid rgba(255,255,255,.1);border-radius:4px;overflow-x:auto;text-align:center;transition:all .3s ease}.heatmap-container:hover{border-color:#ffffff4d;box-shadow:0 0 15px #ffffff1a}.heatmap-img{width:100%;min-width:600px;filter:invert(.9) hue-rotate(180deg) saturate(1.5);opacity:.9;transition:filter .3s ease}.heatmap-container:hover .heatmap-img{filter:invert(.9) hue-rotate(180deg) saturate(1.5);opacity:1}.resume-section{display:flex;flex-direction:row;gap:15px;margin-top:15px;width:100%}.btn-download-resume{background:#fff;color:#000;padding:10px 20px;border-radius:4px;text-decoration:none;font-weight:700;align-self:flex-start;transition:all .2s ease;font-family:inherit}.btn-download-resume:hover{background:#0fc;box-shadow:0 0 10px #00ffcc80}.server-status{position:fixed;top:20px;right:20px;display:flex;align-items:center;gap:10px;padding:10px 16px;background:transparent;border:none;font-family:Doto,monospace;font-size:12px;color:#aaa;z-index:9999;pointer-events:none;transition:opacity .3s ease}.server-status.idle{opacity:.6}.status-text.alternating{transition:all .5s ease;min-width:120px}.server-status.connecting .status-text{color:#888}.dots{display:inline-block;width:18px;text-align:left}.server-status.online .status-text,.server-status.online .wifi-icon{color:#47ffdd}.server-status.offline{animation:flashOffline 1s infinite ease-in-out}.server-status.offline .status-text,.server-status.offline .wifi-icon{color:#ff4757}@keyframes flashOffline{0%,to{opacity:1}50%{opacity:.5}}.loader-spinner{width:16px;height:16px;border:2px solid #333;border-top-color:#47ffdd;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.wifi-icon{display:flex;align-items:center;justify-content:center}.wifi-icon svg{width:16px;height:16px}.wifi-icon.offline svg{position:relative}.wifi-icon.offline:after{content:"";position:absolute;width:20px;height:2px;background:#ff4757;transform:rotate(-45deg)}@media (max-width: 768px){.server-status .status-text{display:none}.server-status{padding:10px;gap:0}}.power-edit{position:fixed;top:0;left:0;right:0;bottom:0;background:#121212;color:#e0e0e0;padding:20px;font-family:Doto,sans-serif;overflow-y:auto;z-index:9998}.power-edit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid #333;padding-bottom:15px}.power-edit-header h1{color:#47ffdd;margin:0}.header-actions{display:flex;gap:10px}.btn-back,.btn-save{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-family:Doto,sans-serif;font-weight:700}.btn-back{background:#333;color:#fff}.btn-save{background:#47ffdd;color:#121212}.btn-save:hover{background:#3de0c5}.tabs{display:flex;gap:5px;margin-bottom:20px}.tabs button{padding:10px 20px;background:#222;border:1px solid #333;color:#aaa;cursor:pointer;font-family:Doto,sans-serif}.tabs button.active{background:#333;color:#47ffdd;border-color:#47ffdd}.section h2{color:#47ffdd;margin:20px 0 10px;display:flex;align-items:center;gap:10px}.section label{display:block;margin:10px 0 5px;color:#888}.section input,.section textarea{width:100%;padding:10px;background:#1a1a1a;border:1px solid #333;color:#e0e0e0;font-family:Doto,sans-serif;font-size:14px;margin-bottom:5px}.section textarea{resize:vertical}.section input:focus,.section textarea:focus{outline:none;border-color:#47ffdd}.item-card{background:#1a1a1a;border:1px solid #333;padding:15px;margin-bottom:10px}.item-row{display:flex;gap:10px;margin-bottom:8px}.item-row input{flex:1;margin-bottom:0}.btn-add{padding:4px 12px;background:#47ffdd;color:#121212;border:none;border-radius:3px;cursor:pointer;font-size:12px;font-family:Doto,sans-serif}.btn-remove{padding:4px 10px;background:#ff4757;color:#fff;border:none;border-radius:3px;cursor:pointer;font-family:Doto,sans-serif;white-space:nowrap}.btn-remove:hover{background:#f34}@media (max-width: 600px){.item-row{flex-direction:column}.power-edit-header{flex-direction:column;gap:10px}}.badges-grid{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px}.badge-item{display:flex;flex-direction:column;align-items:center;gap:5px;background:#1a1a1a;border:1px solid #333;padding:10px;border-radius:4px;width:100px}.badge-item img{width:60px;height:60px;object-fit:contain}.badge-item span{font-size:10px;color:#888;text-align:center;word-break:break-all;max-width:80px}.no-badges{color:#666;font-style:italic}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden;background-color:#000;font-family:Doto,sans-serif}.background{height:100%;width:100%;position:absolute;display:flex;justify-content:center;align-items:center}.indicator-wrapper{display:flex;justify-content:space-between;align-items:center;width:90%}.indicator-wrapper.rotate{animation:slowRotate 60s linear infinite;transform-origin:center center}@keyframes slowRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.indicator{width:3cm;height:200vh;opacity:0;animation:fadeInOut 8s ease-in-out infinite,colorChange 8s linear infinite;filter:blur(5px);transform:translate(-100%)}@keyframes fadeInOut{0%{opacity:0;transform:translate(-100%)}25%{opacity:1;transform:translate(0)}50%{opacity:0;transform:translate(100%)}to{opacity:0;transform:translate(100%)}}@keyframes colorChange{0%{background-color:#0ff}25%{background-color:teal}50%{background-color:#ff69b4}75%{background-color:#ff69b4}to{background-color:purple}}.indicator:nth-child(1){animation-delay:0s,0s}.indicator:nth-child(2){animation-delay:.2s,.2s}.indicator:nth-child(3){animation-delay:.4s,.4s}.indicator:nth-child(4){animation-delay:.6s,.6s}.indicator:nth-child(5){animation-delay:.8s,.8s}.indicator:nth-child(6){animation-delay:1s,1s}.indicator:nth-child(7){animation-delay:1.2s,1.2s}.indicator:nth-child(8){animation-delay:1.4s,1.4s}.indicator:nth-child(9){animation-delay:1.6s,1.6s}.indicator:nth-child(10){animation-delay:1.8s,1.8s}@media (max-width: 768px){.background{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw;position:fixed;top:0;left:0;overflow:hidden}.indicator-wrapper{position:relative;width:80vmin;height:80vmin;animation:mobileSpin 20s linear infinite}.indicator{position:absolute;width:2cm;height:100vmax;opacity:.6;filter:blur(10px);top:50%;left:50%;transform-origin:top center;animation:mobileFade 6s ease-in-out infinite,mobileColorCycle 8s linear infinite,fanSwing 3s ease-in-out infinite;transform:rotate(var(--angle)) translateY(15vmin) rotate(var(--swing, 0deg))}.indicator:nth-child(1){--angle: 0deg}.indicator:nth-child(2){--angle: 36deg}.indicator:nth-child(3){--angle: 72deg}.indicator:nth-child(4){--angle: 108deg}.indicator:nth-child(5){--angle: 144deg}.indicator:nth-child(6){--angle: 180deg}.indicator:nth-child(7){--angle: 216deg}.indicator:nth-child(8){--angle: 252deg}.indicator:nth-child(9){--angle: 288deg}.indicator:nth-child(10){--angle: 324deg}@keyframes mobileSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fanSwing{0%,to{rotate:0deg}25%{rotate:2.5deg}50%{rotate:-2.5deg}75%{rotate:1.5deg}}@keyframes mobileFade{0%{opacity:0}15%{opacity:.7}50%{opacity:1}85%{opacity:.7}to{opacity:0}}@keyframes mobileColorCycle{0%{background-color:#0ff}20%{background-color:#ff69b4}40%{background-color:#f0f}60%{background-color:purple}80%{background-color:#8a2be2}to{background-color:#0ff}}}.edit-mode-badge{position:fixed;top:55px;right:20px;background:transparent;color:#47ffdd;padding:8px 16px;border-radius:4px;font-family:Doto,sans-serif;font-size:12px;font-weight:700;z-index:9999;text-shadow:0 0 5px rgba(71,255,221,.5);display:flex;align-items:center;gap:10px;pointer-events:none}.power-edit-btn{pointer-events:auto;background:#47ffdd;color:#121212;padding:4px 12px;border-radius:3px;text-decoration:none;font-size:.85em;font-weight:700;text-shadow:none;transition:background .2s}.power-edit-btn:hover{background:#3de0c5}.editable-text{cursor:text;position:relative;border-radius:4px;transition:all .2s ease;outline:none;border:1px dashed transparent}.editable-text:hover{border-color:#6b00c980;background:#6b00c90d}.editable-text:focus{border-color:#6b00c9;background:#6b00c91a;box-shadow:0 0 10px #6b00c94d}@media (max-width: 768px){.edit-mode-badge{top:10px;right:10px;padding:6px 12px;font-size:.8em}}
