:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}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:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;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}}:root{--bg: #0b1220;--muted: #9ca3af;--accent: #8b5cf6;--card: #0f1724;--text: #e6eef8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial}.app-container{max-width:1200px;margin:24px auto;display:grid;grid-template-columns:260px 1fr 360px;gap:24px;padding:0 16px;align-items:start}.app-container.wide-details{max-width:1900px;grid-template-columns:260px minmax(auto,532px) 2fr}.sidebar{position:sticky;top:24px;align-self:start;display:flex;flex-direction:column;gap:18px}.sidebar-groups{display:flex;flex-direction:column;gap:12px;margin-top:8px}.sidebar-group-btn{background:var(--card);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;text-align:left;cursor:pointer;color:var(--text);transition:box-shadow .12s,border-color .12s;box-shadow:0 2px 8px #02061714}.sidebar-group-btn.active{border-color:var(--accent);box-shadow:0 4px 16px #8b5cf61f}.sidebar-group-label{font-weight:600;font-size:1rem}.sidebar-group-summary{color:var(--muted);font-size:.88rem;margin-top:2px}.profile{background:var(--card);padding:18px;border-radius:12px;box-shadow:0 6px 18px #02061799;text-align:center}.profile-photo-wrapper{width:124px;height:124px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,#232946 60%,#1e293b);box-shadow:0 2px 12px #0000002e;display:flex;align-items:center;justify-content:center;border:2px solid #232946;overflow:hidden}.profile-photo{width:100%;height:100%;object-fit:cover;aspect-ratio:1 / 1;border-radius:50%;display:block}.profile-name{margin:0;font-size:1.1rem;color:var(--text)}.profile-title{color:var(--muted);font-size:.9rem;margin-top:6px}.profile-contact{margin-top:12px;font-size:.85rem}.contact-link{display:block;color:var(--accent);text-decoration:none;margin-bottom:6px}.contact-muted{color:var(--muted)}.profile-socials{display:flex;justify-content:center;gap:16px;margin-top:14px}.social-link{color:var(--muted);transition:color .15s}.social-link:hover{color:var(--accent)}.main{min-height:360px}.main-experience{max-height:calc(100vh - 48px);overflow-y:auto;scrollbar-width:none}.main-experience::-webkit-scrollbar{display:none}.main-experience .projects-grid{grid-template-columns:1fr}.main-header{margin-bottom:18px}.app-title{margin:0;font-size:1.6rem;color:var(--text)}.app-subtitle{margin:6px 0;color:var(--muted)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.project-card{background:var(--card);padding:14px;border-radius:10px;cursor:pointer;border:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;justify-content:space-between;transition:transform .12s ease,box-shadow .12s ease}.project-card:hover{transform:translateY(-6px);box-shadow:0 14px 40px #02061799}.project-title{margin:0 0 6px;font-size:1.02rem;color:var(--text)}.project-summary{margin:0;color:var(--muted);font-size:.92rem}.project-meta{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.project-date{font-size:.8rem;color:var(--muted)}.tag{background:#8b5cf61f;color:var(--accent);padding:4px 8px;border-radius:999px;font-size:.75rem;margin-left:6px}.experience-card{background:var(--card);padding:14px;border-radius:10px;cursor:pointer;border:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;justify-content:space-between;transition:transform .12s ease,box-shadow .12s ease}.experience-card:hover{transform:translateY(-6px);box-shadow:0 14px 40px #02061799}.experience-card.active{border-color:var(--accent);box-shadow:0 4px 16px #8b5cf61f}.experience-title{margin:0 0 6px;font-size:1.02rem;color:var(--text)}.experience-company{margin:0;color:var(--muted);font-size:.92rem}.experience-meta{display:flex;flex-direction:column;gap:8px;margin-top:12px}.experience-date{font-size:.8rem;color:var(--muted)}.experience-tags{display:flex;flex-wrap:wrap;gap:6px}.details-overlay{position:fixed;inset:0;background:linear-gradient(#02061773,#02061773);display:flex;align-items:center;justify-content:center;padding:24px;z-index:80}.details{background:var(--card);max-width:760px;width:100%;padding:20px;border-radius:12px;box-shadow:0 20px 50px #02061799;position:relative}.details-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:22px;cursor:pointer;color:var(--muted)}.details-title{margin:8px 0 4px;color:var(--text)}.details-meta{color:var(--muted);font-size:.9rem;margin-bottom:12px}.details-description{line-height:1.5;color:var(--text)}.details-links{margin-top:12px}.details-link{display:inline-block;margin-right:8px;color:var(--accent);text-decoration:none}.details-panel{background:transparent}.details-panel .details{max-width:none;box-shadow:none;padding:18px;border-radius:12px;border:1px solid rgba(255,255,255,.04);background:var(--card);height:100%}.details-panel.empty{display:flex;align-items:center;justify-content:center;color:var(--muted)}.details-inline{padding:0}.details-empty{padding:12px;color:var(--muted)}.details-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.details-list{margin:0;padding:0 0 0 18px;line-height:1.7;color:var(--text);font-size:.95rem}.details-list li{margin-bottom:6px}@media(max-width:1100px){.app-container{grid-template-columns:220px 1fr}.details-panel{display:none}}@media(max-width:820px){.app-container{grid-template-columns:1fr}.sidebar{position:static}}
