.desktop-files{pointer-events:auto;z-index:0;position:absolute;inset:0;overflow:hidden}.desktop-file-wrapper{cursor:grab;transition:transform .1s;position:absolute}.desktop-file-wrapper.dragging{cursor:grabbing;filter:drop-shadow(0 8px 12px #0006);transform:scale(1.05)}.desktop-icon{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;align-items:center;gap:8px;width:90px;padding:8px 6px;transition:background .15s;display:flex}.desktop-icon:hover{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e}.desktop-files .desktop-icon{flex-shrink:0}.file-icon{width:60px;height:60px}.pdf{color:#e53935}.txt{color:#777}.zip{color:#e6a700}.image{color:#4caf50}.mail{color:#4c93af}.portfolio{color:#43a047}.desktop-icon:hover .file-icon{transform:scale(1.1)}.file-name{text-align:center;color:#fff;text-shadow:0 1px 2px #000,0 0 4px #000c;text-overflow:ellipsis;white-space:nowrap;max-width:90px;font-size:13px;overflow:hidden}:root{--app-bg:#ffffff80;--window-header-bg:#f0f0f0cc;--text-primary:#1d1d1f;--text-secondary:#0000008c;--soft-border:#0000001a}.dark-mode{--app-bg:#19191cb3;--window-header-bg:#2d2d30d9;--text-primary:#f5f5f7;--text-secondary:#fff9;--soft-border:#ffffff1f}.safari{background:var(--app-bg);height:100%;color:var(--text-primary);flex-direction:column;display:flex}.safari-tabs{background:var(--window-header-bg);cursor:pointer;align-items:flex-end;gap:6px;height:38px;padding:0 10px;display:flex}.safari-tab{min-width:2px;max-width:220px;height:30px;color:var(--text-primary);opacity:.75;background:#ffffff40;border-radius:10px 10px 0 0;flex:180px;align-items:center;gap:8px;padding:0 12px;font-size:13px;transition:background .18s,transform .18s,box-shadow .18s,opacity .18s;display:flex;position:relative}.safari-tab.active{background:var(--window-bg);opacity:1;box-shadow:0 -3px 2px var(--text-secondary), 0 6px 16px #0000001f;z-index:2;position:relative;transform:translateY(-1px)scale(1.005)}.safari-tab:not(.active):hover{opacity:.9;background:#ffffff4d}.safari-tab.active:after{content:"";background:var(--window-bg);height:2px;position:absolute;bottom:-1px;left:0;right:0}.safari-tab:active{transform:translateY(0)}.safari-tab:hover{z-index:10}.tab-tooltip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#232326f7;border:1px solid #ffffff14;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:500;line-height:1.2;transition:opacity .2s 1s,transform .2s 1s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-4px);box-shadow:0 8px 24px #00000040}.safari-tab:hover .tab-tooltip{opacity:1;transform:translate(-50%)translateY(0)}.dark-mode .tab-tooltip{color:#1d1d1f;background:#f5f5f7f5}.safari-tab:not(:hover) .tab-tooltip{transition-delay:0s}.dark-mode .safari-tab{background:#ffffff14}.safari-tab svg{flex-shrink:0;font-size:12px}.safari-tab button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;margin-left:-8px;transition:background .2s,border-color .2s;overflow:hidden}.safari-tab button:hover{background:10px color-mix(in srgb, currentColor 12%, transparent);border-color:currentColor}.safari-tab span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.safari-tab.active button{flex-shrink:0;min-width:10px}.new-tab{color:var(--text-primary);cursor:pointer;background:0 0;border:none;flex-shrink:0;height:30px}.safari-toolbar{background:var(--window-header-bg);border-bottom:1px solid var(--soft-border);align-items:center;gap:12px;height:55px;padding:0 14px;display:flex;position:relative}.navigation-buttons{gap:6px;display:flex}.navigation-buttons button,.toolbar-button{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.navigation-buttons button{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,opacity .2s;display:flex}.navigation-buttons button:hover:not(:disabled){background:color-mix(in srgb, currentColor 12%, transparent)}.navigation-buttons button:disabled{opacity:.35;cursor:default}.navigation-buttons button:hover,.toolbar-button:hover{background:#00000014}.dark-mode .navigation-buttons button:hover,.dark-mode .toolbar-button:hover{background:#ffffff1a}.address-bar{height:34px;color:var(--text-secondary);background:#0000000f;border-radius:10px;flex:1;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:flex}.address-bar input{text-align:center;height:100%;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;margin-left:20px;margin-right:20px;font-size:14px}.address-bar input::placeholder{color:var(--text-secondary)}.dark-mode .address-bar{background:#ffffff14}.address-bar{justify-content:center;position:relative}.address-bar svg{position:absolute;left:12px}.address-bar input{text-align:left;width:100%}.safari-page{background:var(--app-bg);scrollbar-width:none;flex:1;overflow-y:auto}.safari-page::-webkit-scrollbar{display:none}:root{--bg:#f5f5f7;--card:#fff;--text:#222}.dark-mode{--bg:#181818;--card:#242424;--text:#fff}.welcome-screen{background:var(--bg);color:var(--text)}.browser-logo,.search-box{background:var(--card)}.welcome-screen{justify-content:center;align-items:center;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.welcome-content{text-align:center;flex-direction:column;align-items:center;width:600px;display:flex}.browser-logo{border-radius:24px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;font-size:40px;display:flex;box-shadow:0 8px 30px #00000014}.browser-logo svg{stroke-width:.5px;color:#0ebaba}h1{margin:0;font-size:36px}p{color:#777;margin-top:8px}.search-box{border-radius:16px;align-items:center;width:100%;margin-top:30px;padding:6px;display:flex;box-shadow:0 4px 20px #00000014}.search-box input{color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:12px 16px;font-size:16px}.search-box button{color:var(--bg);cursor:pointer;background:#333;background:var(--text);width:40px;height:40px;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;transition:transform .15s,opacity .15s,background .15s;display:flex}.search-box button:hover{opacity:.85;transform:scale(1.05)}.search-box button:active{transform:scale(.95)}.search-box button:focus-visible{outline-offset:2px;outline:2px solid #0ebaba}.quick-links{gap:12px;margin-top:25px;display:flex}.quick-links button{color:inherit;background:#0000000d;border-radius:12px;padding:10px 16px;text-decoration:none;transition:all .2s}.quick-links button:hover{background:#0000001f}.quick-links button:active{transform:scale(.97)}.quick-links button:focus-visible{outline-offset:2px;outline:2px solid #0ebaba}.embedded-page{border:none;width:100%;height:100%}:root{--window-bg:#ffffffbf;--window-header-bg:#f0f0f0cc;--window-text:#1d1d1f;--window-shadow:#00000059}.dark-mode{--window-bg:#232326bf;--window-header-bg:#323237d9;--window-text:#f5f5f7;--window-shadow:#000000a6}.window{background:var(--window-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;height:100%;box-shadow:0 20px 50px var(--window-shadow);pointer-events:auto;color:var(--window-text);transform-origin:50%;border-radius:12px;transition:border-radius .25s,transform .25s,opacity .25s,box-shadow .25s;animation:.5s cubic-bezier(.25,.8,.25,1) window-open;overflow:hidden}.window.minimized{opacity:0;pointer-events:none;transform:scale(.1)}.window.maximized{box-shadow:none;border-radius:0}.window-header{background:var(--window-header-bg);cursor:grab;-webkit-user-select:none;user-select:none;height:38px;color:var(--window-text);justify-content:center;align-items:center;transition:background .25s;display:flex;position:relative}.traffic-lights{gap:8px;display:flex;position:absolute;left:12px}.traffic-lights button{cursor:pointer;border-radius:50%;width:13px;height:13px}.close{background:#ff5f57}.minimize{background:#ffbd2e}.maximize{background:#28c840}.window-content{height:calc(100% - 38px);overflow:hidden}.traffic-lights button{cursor:pointer;border-radius:50%;width:13px;height:13px;position:relative}.traffic-lights button:after{color:#0000008c;opacity:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;transition:opacity .15s;display:flex;position:absolute;inset:0}.traffic-lights button:hover:after{opacity:1}.close:after{content:"×"}.minimize:after{content:"−"}.maximize:after{content:"⛶";font-size:9px}.pdf-viewer{border:none;width:100%;height:100%}@keyframes window-open{0%{opacity:.9;transform:scale(.3)}to{opacity:1;transform:scale(1)}}:root{--grid-chart:#ebedf0}.dark-mode{--grid-chart:#ebedf00a}.overview-page{max-width:1150px;color:var(--text-primary);flex-direction:column;gap:36px;margin:auto;padding:48px;display:flex}.hero{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--soft-border);background:linear-gradient(145deg,#ffffff8c,#ffffff47);border-radius:28px;align-items:center;gap:42px;padding:36px;display:flex;box-shadow:0 15px 35px #00000014}.hero-avatar{object-fit:cover;border-radius:28px;width:170px;height:170px;box-shadow:0 15px 40px #0000002e}.hero-info{flex:1}.hero-info h1{margin:0;font-size:50px;font-weight:700}.hero-subtitle{color:var(--text-secondary);margin-top:8px;margin-bottom:18px;font-size:20px;display:block}.hero-info p{max-width:720px;color:var(--text-secondary);font-size:17px;line-height:1.65}.hero-buttons{align-items:center;gap:14px;margin-top:28px;display:flex}.primary-button{color:#fff;cursor:pointer;background:#0a84ff;border:none;border-radius:14px;align-items:center;gap:10px;padding:12px 20px;font-size:15px;font-weight:600;transition:all .18s;display:flex}.primary-button:hover{background:#0077ed;transform:translateY(-2px)}.social-button{border:none;border:1px solid var(--soft-border);width:46px;height:46px;color:var(--text-primary);cursor:pointer;background:#ffffff73;border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:flex}.social-button svg{font-size:22px}.social-button:hover{background:#ffffffb3;transform:translateY(-2px)}.copied{color:#34c759;margin-top:16px;font-weight:500;display:block}.stats-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.stat-card{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--soft-border);text-align:center;z-index:1000;background:#ffffff61;border-radius:22px;padding:26px;transition:all .2s}.stat-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001f}.stat-card h2{margin:0;font-size:40px;font-weight:700}.stat-card span{color:var(--text-secondary);margin-top:8px;font-size:15px;display:block}.about-card{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--soft-border);z-index:0;background:#ffffff61;border-radius:28px;padding:34px}.about-card h2{margin-top:0;margin-bottom:18px;font-size:32px}.about-card p{color:var(--text-secondary);font-size:17px;line-height:1.8}.awards-card{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--soft-border);background:#ffffff61;border-radius:28px;padding:34px}.awards-header{flex-direction:column;gap:8px;display:flex}.awards-header h2{color:var(--text-secondary);line-height:1.7}.awards-list{gap:16px;margin-top:22px;display:grid}.award-item{border:1px solid var(--soft-border);background:#ffffff73;border-radius:18px;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.award-badge{background:#0a84ff1f;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.award-item h3{margin:0 0 8px;font-size:18px}.award-item p{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.6}.dark-mode .awards-card{background:#ffffff12;border-color:#ffffff1f;box-shadow:0 10px 30px #0003}.dark-mode .award-item{background:#ffffff0f;border-color:#ffffff1f}.dark-mode .award-badge{color:#8ec5ff;background:#0a84ff2e}.lines-card{z-index:1000;position:relative}.language-popup{-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);border:1px solid var(--soft-border);opacity:0;pointer-events:none;z-index:100;background:#fff;border-radius:18px;width:320px;padding:18px;transition:all .22s;position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%)translateY(-10px)scale(.96);box-shadow:0 20px 60px #0000002e}.dark-mode .language-popup{background:#28282c}.lines-card:hover .language-popup{opacity:1;transform:translate(-50%)translateY(0)scale(1)}.language-popup-header{margin-bottom:18px;font-size:18px;font-weight:600;overflow-y:auto}.language-row{grid-template-columns:90px 1fr 48px;align-items:center;gap:12px;margin-bottom:12px;display:grid}.language-name{white-space:nowrap;font-size:13px}.language-bar{background:#00000014;border-radius:999px;height:8px;overflow:hidden}.dark-mode .language-bar{background:#ffffff14}.language-fill{background:linear-gradient(90deg,#0a84ff,#5ac8fa);border-radius:999px;height:100%}.language-percent{text-align:right;color:var(--text-secondary);font-size:12px}.language-total{border-top:1px solid var(--soft-border);color:var(--text-secondary);margin-top:12px;padding-top:14px;font-size:13px}.repo-card{position:relative}.repo-popup{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--soft-border);opacity:0;pointer-events:none;z-index:1000;background:#ffffffde;border-radius:18px;width:360px;padding:18px;transition:opacity .22s,transform .22s;position:absolute;top:calc(100% + 18px);left:50%;transform:translate(-50%)translateY(-8px)scale(.97);box-shadow:0 25px 60px #0000002e}.dark-mode .repo-popup{background:#28282cde}.repo-card:hover .repo-popup{opacity:1;z-index:1000;transform:translate(-50%)translateY(0)scale(1)}.contribution-grid{grid-template-columns:repeat(26,8px);justify-content:center;gap:4px;margin-top:8px;display:grid}.contribution-cell{border-radius:3px;width:10px;height:10px;transition:transform .15s,background .2s}.repo-popup:hover .contribution-cell{animation:.4s forwards fadeInGrid}.contribution-cell:hover{transform:scale(1.5)}.level-0{background:var(--grid-chart)}.level-1{background:#9be9a8}.level-2{background:#40c463}.level-3{background:#30a14e}.level-4{background:#216e39}.repo-divider{border-top:1px solid var(--soft-border);margin:18px 0}.repo-row{justify-content:space-between;font-size:13px;display:flex}.repo-row span:last-child{color:var(--text-secondary)}.repo-footer{color:var(--text-secondary);margin-top:14px;font-size:12px}.language-card{position:relative}.language-popup{-webkit-backdrop-filter:blur(30px);border:1px solid var(--soft-border);opacity:0;pointer-events:none;z-index:1000;background:#ffffffb8;border-radius:18px;width:420px;max-height:320px;padding:18px;transition:opacity .22s,transform .22s;position:absolute;top:calc(100% + 18px);left:50%;overflow-y:auto;transform:translate(-50%)translateY(-8px)scale(.97);box-shadow:0 25px 60px #0000002e,inset 0 0 20px #ffffff40}.language-card:hover .language-popup{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)scale(1)}.language-popup h3{color:var(--text);text-align:center;margin:0 0 16px;font-size:16px;font-weight:600}.language-grid{grid-template-columns:repeat(5,1fr);justify-items:center;gap:18px 14px;display:grid}.language-icon{width:60px;color:var(--text);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex}.language-logo{background:#ffffffa6;border:1px solid #00000014;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:27px;transition:transform .18s,box-shadow .18s;display:flex;box-shadow:0 5px 14px #0000001f,inset 0 0 10px #ffffff73}.language-icon:hover .language-logo{transform:translateY(-4px)scale(1.08);box-shadow:0 10px 20px #0000002e,inset 0 0 12px #ffffff8c}.language-icon span{text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:65px}.language-popup::-webkit-scrollbar{width:6px}.language-popup::-webkit-scrollbar-thumb{background:#00000040;border-radius:10px}.dark-mode .language-popup{background:#1e1e23b8;border-color:#ffffff1f;box-shadow:0 25px 60px #00000073,inset 0 0 20px #ffffff0d}.dark-mode .language-logo{background:#ffffff14;border-color:#ffffff1f;box-shadow:0 5px 14px #00000059,inset 0 0 10px #ffffff0d}.dark-mode .language-popup::-webkit-scrollbar-thumb{background:#ffffff40}.language-popup .repo-popup{-webkit-backdrop-filter:blur(30px)saturate(160%);background:#fff}.dark-mode .language-popup .repo-popup{-webkit-backdrop-filter:blur(30px)saturate(160%);background:#1e1e23}.dark-mode .hero,.dark-mode .about-card,.dark-mode .awards-card,.dark-mode .stat-card{background:#28282d8c}.dark-mode .social-button{background:#ffffff14}.dark-mode .social-button:hover{background:#ffffff24}.dark-mode .primary-button{background:#0a84ff}@keyframes fadeInGrid{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.skills-page{flex-direction:column;gap:40px;height:100%;padding:36px;display:flex}.skills-header{flex-direction:column;gap:8px;display:flex}.skills-header h1{margin:0;font-size:42px;font-weight:700}.skills-header p{max-width:700px;color:var(--text-secondary);margin:0;font-size:15px;line-height:1.6}.skill-section{flex-direction:column;gap:18px;display:flex}.skill-section h2{margin:0;font-size:22px;font-weight:600}.skill-card{perspective:1000px;cursor:pointer;width:100%;height:200px}.skill-card:hover{box-shadow:0 14px 30px #00000024}.skill-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s;position:relative}.skill-card.flipped .skill-card-inner{transform:rotateY(180deg)}.skill-front,.skill-back{border:1px solid var(--soft-border);-webkit-backdrop-filter:blur(18px);backface-visibility:hidden;background:#ffffff61;border-radius:18px;padding:22px 18px;position:absolute;inset:0;overflow:hidden}.dark-mode .skill-front,.dark-mode .skill-back{background:#ffffff0d}.skill-front{flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.skill-icon{background:#ffffff14;border-radius:20px;justify-content:center;align-items:center;width:70px;height:70px;font-size:38px;transition:transform .25s;display:flex}.skill-card:hover .skill-icon{transform:scale(1.08)}.skill-info{flex-direction:column;align-items:center;gap:10px;display:flex}.skill-name{text-align:center;color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.3}.skill-level{letter-spacing:.02em;-webkit-user-select:none;user-select:none;border-radius:999px;padding:5px 12px;font-size:11px;font-weight:700}.skill-back{flex-direction:column;justify-content:center;gap:8px;display:flex;transform:rotateY(180deg)}.skill-back h3{text-align:center;margin:0 0 8px;font-size:16px}.skill-back button{cursor:pointer;text-align:left;color:var(--text-primary);background:#0000000f;border:none;border-radius:10px;padding:8px 12px;transition:background .2s,transform .2s}.skill-back button:hover{background:#007aff2e;transform:translate(3px)}.dark-mode .skill-back button{background:#ffffff14}.dark-mode .skill-back button:hover{background:#007aff40}.skill-level.expert{color:#15803d;background:#daf5e2}.dark-mode .skill-level.expert{color:#66e28f;background:#123621}.skill-level.advanced{color:#2563eb;background:#dcebff}.dark-mode .skill-level.advanced{color:#78b4ff;background:#132c55}.skill-level.intermediate{color:#c87a00;background:#fff2d5}.dark-mode .skill-level.intermediate{color:#ffcb73;background:#47300d}.skill-level.familiar{color:#6b7280;background:#ececec}.dark-mode .skill-level.familiar{color:#c2c2c2;background:#323232}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:18px;display:grid}.projects-page{flex-direction:column;gap:32px;height:100%;padding:36px;display:flex}.projects-header{border-bottom:1px solid var(--soft-border);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:20px;display:flex}.projects-header h1{letter-spacing:-1px;margin:0;font-size:42px;font-weight:700}.projects-header p{color:var(--text-secondary);max-width:600px;margin:8px 0 0;font-size:16px;line-height:1.6}.project-count{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--soft-border);color:var(--text-secondary);background:#ffffff26;border-radius:999px;flex-shrink:0;padding:8px 14px;font-size:14px;font-weight:600}.dark-mode .project-count{background:#ffffff0f}.projects-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.project-count{border:1px solid var(--soft-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-secondary);white-space:nowrap;background:#ffffff1f;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:600}.projects-list{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:28px;display:grid}.project-card{cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--soft-border);background:#ffffff2e;border-radius:24px;transition:transform .25s,box-shadow .25s;overflow:hidden;box-shadow:0 10px 30px #00000014}.project-card:hover{transform:translateY(-8px);box-shadow:0 22px 45px #0000002e}.project-image{aspect-ratio:16/9;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.project-card:hover .project-image img{transform:scale(1.06)}.project-image:after{content:"";background:linear-gradient(#0000 30%,#00000059 65%,#000000d1);position:absolute;inset:0}.project-image-overlay{z-index:2;position:absolute;bottom:20px;left:22px;right:22px}.project-image-overlay h2{color:#fff;text-shadow:0 3px 15px #00000080;margin:0;font-size:30px;font-weight:700}.project-content{padding:22px}.project-subline{color:var(--text-secondary);margin:0 0 18px;line-height:1.5}.project-skills{flex-wrap:wrap;gap:10px;margin-bottom:24px;display:flex}.project-skills span{background:color-mix(in srgb, var(--skill-color) 12%, transparent);border:1px solid color-mix(in srgb, var(--skill-color) 35%, transparent);border-radius:999px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:600;display:flex}.more-skills{color:var(--text-secondary)!important;border:1px dashed var(--soft-border)!important;background:#0000000a!important}.dark-mode .more-skills{background:#ffffff0d!important}.project-footer{justify-content:space-between;align-items:center;display:flex}.footer-date{align-items:center;gap:10px;display:flex}.footer-date svg{color:#007aff;font-size:18px}.footer-date span{color:var(--text-secondary);font-size:12px;display:block}.footer-date strong{font-size:14px}.project-arrow{color:var(--text-secondary);font-size:20px;transition:transform .2s}.project-card:hover .project-arrow{transform:translate(6px)}.expanded-project{color:var(--text);cursor:pointer;flex-direction:column;gap:30px;padding:35px;display:flex}.expanded-project .project-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.expanded-project .project-header h1{margin:0;font-size:34px}.expanded-project .project-header p{color:var(--text-secondary);margin-top:8px}.expanded-project .project-actions{gap:12px;display:flex}.expanded-project .project-actions a{color:inherit;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid var(--soft-border);cursor:pointer;background:#ffffff26;border-radius:14px;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;transition:all .2s;display:flex}.expanded-project .project-actions a:hover{background:#ffffff40;transform:translateY(-2px)}.expanded-project .project-carousel{justify-content:center;align-items:center;gap:20px;height:300px;display:flex;overflow:hidden}.expanded-project .main-project-image{object-fit:contain;cursor:pointer;border-radius:18px;width:500px;height:280px;transition:all .25s;box-shadow:0 15px 40px #0003}.expanded-project .main-project-image:hover{transform:scale(1.02)}.expanded-project .main-image-container{flex-direction:column;align-items:center;gap:10px;display:flex}.expanded-project .image-name{color:var(--text-secondary);opacity:.8;margin-bottom:15px;font-family:JetBrains Mono,monospace;font-size:16px}.expanded-project .preview-image{object-fit:cover;opacity:.45;cursor:pointer;filter:blur(.5px);border-radius:15px;width:140px;height:200px;transition:all .25s}.expanded-project .preview-image:hover{opacity:.8;transform:scale(1.05)}.expanded-project .preview-image.left{transform:translate(-20px)}.expanded-project .preview-image.right{transform:translate(20px)}.expanded-project .carousel-button{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:45px;height:45px;color:inherit;background:#ffffff40;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:35px;line-height:1;display:flex}.expanded-project .carousel-button svg{font-size:16px}.expanded-project .carousel-button:hover{background:#ffffff73}.image-overlay{z-index:9999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000008c;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.image-overlay img{object-fit:contain;border-radius:18px;width:auto;max-width:80vw;height:auto;max-height:80vh;animation:.2s imageOpen;box-shadow:0 25px 80px #00000080}.close-image{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:30px;line-height:1;display:flex;position:absolute;top:30px;right:40px}.expanded-project .project-info{grid-template-columns:1fr 1fr;gap:20px;margin-top:0;display:grid}.expanded-project .project-panel{text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--soft-border);background:#ffffff1f;border-radius:20px;padding:22px}.dark-mode .expanded-project .project-panel{background:#ffffff0d}.expanded-project .project-panel h2{margin-top:0;font-size:20px}.expanded-project .key-facts-panel{text-align:center;grid-column:1/-1}.expanded-project .key-facts{color:var(--text-primary);margin:15px 50px;font-size:18px;line-height:1.7}.dark-mode .expanded-project .key-facts{color:#fff}.expanded-project .skills{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.expanded-project .skills span{background:color-mix(in srgb, var(--skill-color) 15%, transparent);border:1px solid color-mix(in srgb, var(--skill-color) 35%, transparent);text-shadow:0 1px 2px #00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #00000026}.expanded-project .skills span:hover{background:color-mix(in srgb, var(--skill-color) 25%, transparent);transform:translateY(-2px)}.timeline-panel h2{margin-bottom:20px}.timeline{flex-direction:column;gap:20px;padding-left:10px;display:flex;position:relative}.timeline:before{content:"";background:#7878784d;width:2px;height:calc(100% - 28px);position:absolute;top:8px;left:15px}.timeline-event{align-items:flex-start;gap:18px;display:flex;position:relative}.timeline-dot{background:var(--dot-color,#007aff);width:12px;height:12px;box-shadow:0 0 0 5px color-mix(in srgb, var(--dot-color,#007aff) 20%, transparent);z-index:1;border-radius:50%;margin-top:6px}.timeline-content{flex-direction:column;gap:4px;display:flex}.timeline-content span{color:var(--text-secondary);font-size:13px}.timeline-content strong{text-align:left;font-size:16px;font-weight:600}.expanded-project .readme{border:1px solid var(--soft-border);background:#0000000d;border-radius:20px;overflow:hidden}.dark-mode .expanded-project .readme{background:#ffffff0d}.expanded-project .readme-header{text-align:center;background:#ffffff1f;padding:12px 20px;font-weight:700}.expanded-project .markdown{padding:25px;line-height:1.6;overflow:auto}.expanded-project .markdown h1,.expanded-project .markdown h2,.expanded-project .markdown h3{margin-top:24px;margin-bottom:12px}.expanded-project .markdown p{margin:12px 0}.expanded-project .markdown code{background:#0000001a;border-radius:6px;padding:3px 6px;font-family:JetBrains Mono,monospace}.dark-mode .expanded-project .markdown code{background:#ffffff1a}.expanded-project .markdown pre{background:#0000001f;border-radius:12px;padding:16px;overflow-x:auto}.expanded-project .markdown img{border-radius:12px;max-width:100%}.expanded-project .markdown table{border-collapse:collapse;width:100%}.expanded-project .markdown th,.expanded-project .markdown td{border:1px solid var(--soft-border);padding:8px}.expanded-project .markdown blockquote{opacity:.8;border-left:4px solid #007aff;padding-left:15px}.expanded-project .markdown{color:var(--text);padding:25px;line-height:1.6}.skill-filter select{border:1px solid var(--soft-border);color:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:12px;margin-bottom:15px;padding:8px 12px}.skills span{align-items:center;gap:7px;display:flex}.glass-dropdown{z-index:10;width:max-content;position:relative}.glass-dropdown-button{border:1px solid var(--soft-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--text);cursor:pointer;background:#ffffff2e;border-radius:14px;align-items:center;gap:12px;padding:10px 15px;display:flex}.glass-dropdown-button svg{transition:all .2s}.glass-dropdown-button .rotate{transform:rotate(180deg)}.glass-dropdown-menu{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--soft-border);background:#ffffff59;border-radius:16px;min-width:220px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 15px 40px #00000026}.dark-mode .glass-dropdown-menu{background:#1e1e1ea6}.glass-dropdown-menu button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 12px}.glass-dropdown-menu button:hover,.glass-dropdown-menu button.selected{background:#007aff2e}@keyframes imageOpen{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}:root{--app-bg:#ffffff73;--card-bg:#ffffff73;--input-bg:#ffffffa6;--input-focus-bg:white;--text-primary:#1d1d1f;--text-secondary:#00000094;--text-label:#333;--border:#0000001f;--soft-border:#00000014}.dark-mode{--app-bg:#1e1e20a6;--card-bg:#2d2d30a6;--input-bg:#3c3c41bf;--input-focus-bg:#46464be6;--text-primary:#f5f5f7;--text-secondary:#fff9;--text-label:#e5e5e7;--border:#ffffff26;--soft-border:#ffffff1a}.contact-form{box-sizing:border-box;background:var(--window-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;gap:18px;width:100%;height:100%;padding:25px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-label);font-size:14px;font-weight:600}.form-group input,.form-group textarea{border:1px solid var(--border);background:var(--input-bg);color:var(--text-primary);border-radius:10px;outline:none;padding:10px 12px;font-family:inherit;font-size:15px;transition:border .15s,box-shadow .15s,background .15s;box-shadow:inset 0 1px 2px #00000014,0 1px 2px #0000001a}.form-group textarea{resize:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-secondary)}.form-group input:focus,.form-group textarea:focus{background:var(--input-focus-bg);border-color:#007aff;box-shadow:0 0 0 3px #007aff40}.send-button{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:10px;align-self:flex-end;padding:10px 22px;font-size:15px;font-weight:600;transition:transform .15s,background .15s;box-shadow:0 4px 10px #007aff4d}.send-button:hover{background:#0066d6}.send-button:active{transform:scale(.96)}.contact-window{background:radial-gradient(circle at top left, #007aff2e, transparent 35%), radial-gradient(circle at bottom right, #7850ff26, transparent 35%), var(--app-bg);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);height:100%;padding:24px;overflow-y:hidden}.contact-header{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;margin-bottom:20px;padding:20px;display:flex;box-shadow:0 10px 30px #0000001f}.contact-header p{color:var(--text-secondary)}.contact-icon{color:#fff;background:linear-gradient(135deg,#007aff,#5ac8fa);border-radius:14px;justify-content:center;align-items:center;width:55px;height:55px;font-size:25px;display:flex;box-shadow:0 8px 20px #007aff59}.contact-header h3{margin:0 0 5px;font-size:22px}.contact-header p{color:var(--text-primary);margin:0;font-size:14px}.contact-header a{color:#007aff;text-decoration:none}.settings-header-title{color:#333;align-items:center;gap:8px;font-weight:600;display:flex}.settings-content{box-sizing:border-box;background:radial-gradient(circle at top left, #007aff14, transparent 35%), radial-gradient(circle at bottom right, #7850ff14, transparent 40%), var(--app-bg);height:100%;padding:28px;overflow-y:auto}.settings-title{align-items:center;gap:18px;margin-bottom:26px;display:flex}.settings-title-icon{color:#fff;background:linear-gradient(135deg,#8e8e93,#636366);border-radius:18px;justify-content:center;align-items:center;width:68px;height:68px;display:flex;box-shadow:0 10px 24px #0000002e,inset 0 1px 1px #ffffff40}.settings-title-icon svg{transform-origin:50%;transition:transform .3s}.settings-content:hover .settings-title-icon svg{animation:2s linear infinite settingsSpin}@keyframes settingsSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-title h2{color:var(--text-primary);margin:0;font-size:32px;font-weight:700}.settings-title span{color:var(--text-secondary);margin-top:4px;font-size:15px;display:block}.settings-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;overflow:hidden}.setting-row{border-bottom:1px solid var(--soft-border);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.setting-row:last-child{border-bottom:none}.setting-left{align-items:center;gap:16px;display:flex}.setting-icon{color:#fff;background:linear-gradient(135deg,#0a84ff,#5ac8fa);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.setting-title{font-weight:600}.setting-subtitle{color:var(--text-secondary);font-size:13px}.setting-row select{border:1px solid var(--border);background:var(--input-bg);width:180px;color:var(--text-primary);border-radius:10px;padding:8px 12px}.switch{width:48px;height:28px;position:relative}.switch input{display:none}.slider{cursor:pointer;background:#c7c7cc;border-radius:30px;transition:all .2s;position:absolute;inset:0}.settings-header-title{color:var(--text-primary)}.slider:before{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #00000040}.switch input:checked+.slider{background:#34c759}.switch input:checked+.slider:before{transform:translate(20px)}.wallpaper-picker{gap:10px;display:flex}.wallpaper-option{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:10px;width:72px;height:44px;padding:3px;transition:all .2s}.wallpaper-option:hover{transform:translateY(-2px)}.wallpaper-option.selected{border-color:#0a84ff;box-shadow:0 0 0 2px #0a84ff40}.wallpaper-option img{object-fit:cover;border-radius:7px;width:100%;height:100%;display:block}:root{--color-white:#fff;--color-white-200:#fff3;--color-white-400:#fff6;--color-white-900:#ffffffe6;--color-black:#1e1e1e;--color-black-100:#0000001a;--color-blue-800:#007ff7;--color-red:#ff0202c9;--color-green:#11dd4e}*{border:0;outline:0;margin:0;padding:0;list-style:none}@media screen and (width<=900px){.hidden{display:none}}button,input{-webkit-tap-highlight-color:transparent;background-color:#0000;border:0;outline:0}.screen{-webkit-user-select:none;user-select:none;background:url(/assets/wallpaper2-KTot0Tn7.png) 50%/cover no-repeat;height:100vh;font-family:sans-serif;transition:background-image .5s;overflow:hidden}.navbar{width:100%;color:var(--color-white-900);box-shadow:0 2px 10px var(--color-black-100);z-index:100;background:linear-gradient(90deg,#6e1438,#270598,#e54c2d);justify-content:space-between;align-items:center;padding:.1rem 0;animation:.3s top-to-bottom;display:flex;position:fixed;top:0;left:0}.navbar>ul{align-items:center;display:flex}.navbar li{cursor:pointer;text-shadow:0 3px 10px #00000049;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0 4px;font-size:14px;transition:all .2s;position:relative}.navbar .leftLi.logo img{transform:translateY(1px)}.navbar svg{fill:var(--color-white)}.navbar .leftLi{padding:4px 8px}.navbar .leftLi a{color:var(--color-white);text-decoration:none}.navbar .leftLi:hover{color:var(--color-white);background-color:var(--color-white-200);border-radius:5px}li>ul{background:var(--color-white-400);-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);z-index:21;border-radius:5px;flex-direction:column;align-items:center;min-width:200px;margin-top:1px;padding:4px;font-weight:600;display:none;position:absolute;top:100%;left:0;box-shadow:0 2px 7px #0000005d}li:hover>ul{display:flex}li>ul>li{border-bottom:1px solid #00000026;width:100%;padding-bottom:5px;margin-bottom:5px!important}li>ul>li:last-child{border-bottom:0;margin-bottom:0!important;padding-bottom:0!important}li>ul>li>button{color:var(--color-white);text-align:left;cursor:pointer;border-radius:5px;flex-direction:row;width:100%;height:100%;padding:4px 8px;font-family:Lexend,sans-serif;font-size:14px;font-weight:100;transition:all 80ms;display:flex}li>ul>li>button a{width:100%;color:inherit;text-decoration:none;display:block}li>ul>li>button:hover{color:var(--color-white);background:var(--color-blue-800)}li>ul>li>button:active{background-color:#0063f7}.navbar__right li{margin:0 10px}.navbar__right li svg{transform:scale(.8)}.wifi svg{transform:translateY(1px)scale(.8)!important}.navbar__right .clock #clock{margin-left:15px;margin-right:15px}.navbar__right li .control-center{width:32px;height:19px;transform:scale(.8)translateY(1px)}.navbar__right .battery{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:4px;align-items:center;margin:0;padding:.3rem .5rem;transition:all .2s ease-out;display:flex;position:relative}.navbar__right .battery.selected{background:var(--color-white-200)}.navbar__right .battery__container{border:1px solid #fff6;border-radius:3px;width:22px;height:10px;padding:1px;position:relative}.navbar__right .battery__container:after{content:"";background:#fff6;border-top-right-radius:3px;border-bottom-right-radius:3px;width:3px;height:7px;position:absolute;top:50%;right:-5px;transform:translateY(-50%)}.navbar__right .battery__progress{background:#fff;border-radius:2px;height:100%;display:flex}.navbar__right .battery__progress .is-charging{width:100%;height:100%;display:none}.navbar__right .battery__low{background-color:var(--color-red)}.navbar__right .battery__high{background-color:var(--color-green)}.navbar__right .battery__text{margin-right:4px;font-size:12px}.navbar__right .battery__popup{opacity:0;-webkit-backdrop-filter:blur(60px);backdrop-filter:blur(60px);background:#0000001a;border:1px solid #fff3;border-radius:8px;width:220px;padding:4px;transition:all .2s ease-out;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 0 10px #0003}.navbar__right .battery__popup.opened{opacity:1}.navbar__right .battery__popup header{justify-content:space-between;align-items:center;padding:0 10px;display:flex}.navbar__right .battery__popup header h3{font-size:16px;font-weight:600}.navbar__right .battery__popup header span{opacity:.75;font-size:12px}.navbar__right .battery__popup p{margin-top:4px;padding:0 10px;font-size:11px}.navbar__right .battery__popup hr{border:0;border-top:1px solid #fff3;border-radius:99px;margin:6px 8px}.navbar__right .battery__popup button{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;justify-content:space-between;align-items:center;width:100%;padding:4px 10px;display:flex}.navbar__right .battery__popup button:hover{background-color:var(--color-blue-800)}.navbar__right .battery__popup button:active,li>ul>li>button:active{background-color:#0063f7}@media screen and (width<=600px){.navbar__right .clock #clock{margin-left:0}}.desktop-area{z-index:20;pointer-events:none;position:absolute;inset:30px 0 0;overflow:hidden}.desktop-area .window,.desktop-area .resize-handle{pointer-events:auto}.dock{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-white-200);z-index:0;pointer-events:auto;border-radius:14px;align-items:center;height:65px;padding:.2rem .5rem 0;display:flex;position:fixed;bottom:3%;left:50%;transform:translate(-50%);box-shadow:0 0 30px #0000008e}@media screen and (width<=900px){.dock{border-radius:20px}}.dock .point{background:#f08080;border-radius:50%;width:6px;height:6px;margin-bottom:5px;transition:all .3s;animation:.3s top-to-bottom}.dock .column{background:var(--color-white-400);width:1px;height:45px;margin:0 4px}.dock .icon{-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;place-items:center;transition:all .3s;display:grid;position:relative}.dock .icon img{width:3.6rem;transition:transform .2s,width .2s;transform:translateY(-2.5px)}.dock .icon:hover img{width:7.1rem;margin:0 0 40px}.dock .icon img:active{filter:brightness(.6)drop-shadow(0 0 10px #2c2c2c)}.dock .icon:hover .point{transform:translateY(-32px)}#shutdownScreen,#restartScreen{z-index:999999;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#lockGif{transform-origin:50%;width:300px;transform:scale(4)}.desktop{opacity:1;transition:opacity .5s}.desktop-hidden{opacity:0;pointer-events:none;z-index:1000}.icon.bounce img{animation:.8s dockBounce}::-webkit-scrollbar{background-color:#fff;width:16px}::-webkit-scrollbar-track{background-color:#fff}::-webkit-scrollbar-thumb{background-color:#babac0;border:4px solid #fff;border-radius:16px}::-webkit-scrollbar-button{display:none}@keyframes top-to-bottom{0%{opacity:0;transform:translateY(-60px)}to{opacity:1;transform:none}}@keyframes dockBounce{0%{transform:translateY(0)scale(1)}20%{transform:translateY(-35px)scale(1.05)}40%{transform:translateY(0)scale(.95)}60%{transform:translateY(-18px)scale(1.02)}80%{transform:translateY(0)scale(.98)}to{transform:translateY(0)scale(1)}}
