.starry-background[data-v-901c0f18]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.star[data-v-901c0f18]{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%;opacity:0;-webkit-animation:twinkle-901c0f18 ease-in-out infinite;animation:twinkle-901c0f18 ease-in-out infinite}.star[data-v-901c0f18]:nth-child(3n){width:1px;height:1px}.star[data-v-901c0f18]:nth-child(5n){width:3px;height:3px;box-shadow:0 0 2px hsla(0,0%,100%,.8)}.star[data-v-901c0f18]:nth-child(7n){width:1.5px;height:1.5px;background:#e6f3ff}.star[data-v-901c0f18]:nth-child(11n){background:#fff8e1;box-shadow:0 0 1px rgba(255,248,225,.6)}@-webkit-keyframes twinkle-901c0f18{0%,to{opacity:0;transform:scale(1)}20%{opacity:.3;transform:scale(1.1)}50%{opacity:1;transform:scale(1.2)}80%{opacity:.7;transform:scale(1.05)}}@keyframes twinkle-901c0f18{0%,to{opacity:0;transform:scale(1)}20%{opacity:.3;transform:scale(1.1)}50%{opacity:1;transform:scale(1.2)}80%{opacity:.7;transform:scale(1.05)}}@media (prefers-color-scheme:light){.starry-background[data-v-901c0f18]{display:none}}@media (prefers-color-scheme:dark){body{--ion-background-color:#121212;--ion-background-color-rgb:18,18,18;--ion-text-color:#fff;--ion-text-color-rgb:255,255,255;--ion-card-background:#1e1e1e}}.local-skills-chart[data-v-9aa5994a]{width:100%;font-family:Open Sans,Helvetica,Arial,sans-serif}.chart-error[data-v-9aa5994a],.chart-loading[data-v-9aa5994a]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--ion-color-medium)}.error-content[data-v-9aa5994a]{text-align:center;padding:20px}.error-icon[data-v-9aa5994a]{font-size:48px;opacity:.5;margin-bottom:10px}.error-content p[data-v-9aa5994a]{margin:10px 0;font-size:14px}.error-content small[data-v-9aa5994a]{display:block;margin-top:8px;opacity:.7;font-size:12px}.loading-spinner[data-v-9aa5994a]{width:32px;height:32px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;-webkit-animation:spin-9aa5994a 1s linear infinite;animation:spin-9aa5994a 1s linear infinite;margin-bottom:10px}@-webkit-keyframes spin-9aa5994a{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-9aa5994a{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chart-container[data-v-9aa5994a]{position:relative;width:100%;min-height:400px;display:flex;flex-direction:column}.skills-chart-svg[data-v-9aa5994a]{width:100%;height:100%;display:block}.chart-background[data-v-9aa5994a]{fill:var(--ion-background-color,transparent);opacity:.02}.skill-area[data-v-9aa5994a]{transition:opacity .25s ease;cursor:pointer}.axis-line[data-v-9aa5994a]{stroke:var(--ion-text-color,#333);opacity:.2;stroke-width:1}.axis-label[data-v-9aa5994a]{fill:var(--ion-text-color,#333);opacity:.7;font-size:10px;font-weight:500}.chart-legend[data-v-9aa5994a]{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;justify-content:center}.legend-item[data-v-9aa5994a]{display:flex;align-items:center;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.legend-item[data-v-9aa5994a]:hover{background-color:hsla(0,0%,100%,.1);transform:translateY(-1px)}.legend-item--disabled[data-v-9aa5994a]{opacity:.5}.legend-color[data-v-9aa5994a]{width:12px;height:12px;border-radius:2px;margin-right:6px}.legend-text[data-v-9aa5994a]{font-size:14px;color:var(--ion-text-color,#333)}.chart-tooltip[data-v-9aa5994a]{position:absolute;background:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.2);border-radius:6px;padding:12px;pointer-events:none;z-index:1000;min-width:160px;max-width:300px}@media (prefers-color-scheme:dark){.chart-tooltip[data-v-9aa5994a]{background:rgba(30,30,30,.95);border:1px solid hsla(0,0%,100%,.2)}.chart-tooltip .tooltip-header[data-v-9aa5994a],.chart-tooltip .tooltip-loc-label[data-v-9aa5994a],.chart-tooltip .tooltip-skill-breakdown[data-v-9aa5994a],.chart-tooltip .tooltip-skill-name[data-v-9aa5994a],.chart-tooltip .tooltip-skill-score[data-v-9aa5994a]{color:#fff!important}.chart-tooltip .tooltip-loc-label[data-v-9aa5994a],.chart-tooltip .tooltip-skill-breakdown[data-v-9aa5994a],.chart-tooltip .tooltip-skill-name[data-v-9aa5994a]{opacity:.8}}.tooltip-header[data-v-9aa5994a]{font-size:12px;font-weight:700;color:var(--ion-text-color,#333);margin-bottom:6px;text-align:center}.tooltip-skill[data-v-9aa5994a]{display:flex;align-items:flex-start;margin-bottom:6px;font-size:11px}.tooltip-skill[data-v-9aa5994a]:last-child{margin-bottom:0}.tooltip-skill-color[data-v-9aa5994a]{width:8px;height:8px;border-radius:1px;margin-right:8px;margin-top:2px;flex-shrink:0}.tooltip-skill-info[data-v-9aa5994a]{flex:1}.tooltip-skill-header[data-v-9aa5994a]{display:flex;justify-content:space-between;align-items:center}.tooltip-skill-name[data-v-9aa5994a]{color:var(--ion-text-color,#333);opacity:.8;margin-right:6px}.tooltip-skill-score[data-v-9aa5994a]{color:var(--ion-text-color,#333);font-weight:500}.tooltip-skill-breakdown[data-v-9aa5994a]{color:var(--ion-text-color,#333);opacity:.6;font-size:10px;margin-top:2px;line-height:1.3;word-wrap:break-word}.tooltip-loc-data[data-v-9aa5994a]{margin-top:8px;padding-top:8px;border-top:1px solid hsla(0,0%,100%,.2)}.tooltip-loc-header[data-v-9aa5994a]{font-size:11px;font-weight:700;color:#ff6b6b;margin-bottom:4px}.tooltip-loc-metrics[data-v-9aa5994a]{display:flex;flex-direction:column;gap:2px}.tooltip-loc-metric[data-v-9aa5994a]{display:flex;justify-content:space-between;align-items:center;font-size:10px}.tooltip-loc-label[data-v-9aa5994a]{color:var(--ion-text-color,#333);opacity:.8}.tooltip-loc-value[data-v-9aa5994a]{color:#ff6b6b;font-weight:500}.chart-branding[data-v-9aa5994a]{margin-top:10px;text-align:center}.chart-branding small[data-v-9aa5994a]{color:var(--ion-color-medium);font-size:11px}.legend-tooltip[data-v-9aa5994a]{position:absolute;background:hsla(0,0%,100%,.97);border:1px solid rgba(0,0,0,.2);border-radius:8px;padding:16px;pointer-events:none;z-index:1001;min-width:220px;max-width:320px;transform:translateX(-50%);box-shadow:0 4px 12px rgba(0,0,0,.15);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){.legend-tooltip[data-v-9aa5994a]{background:rgba(20,20,20,.97);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 12px rgba(0,0,0,.4)}.legend-tooltip .legend-tooltip-header[data-v-9aa5994a],.legend-tooltip .legend-tooltip-languages[data-v-9aa5994a]{color:#fff!important}.legend-tooltip .legend-tooltip-count[data-v-9aa5994a]{color:#ccc!important}.legend-tooltip .legend-tooltip-more[data-v-9aa5994a]{color:#bbb!important}.legend-tooltip .legend-tooltip-extension[data-v-9aa5994a],.legend-tooltip .legend-tooltip-section[data-v-9aa5994a]{color:#6ddbff!important}.legend-tooltip-more[data-v-9aa5994a]{border-top:1px solid hsla(0,0%,100%,.2)!important}}.legend-tooltip-header[data-v-9aa5994a]{font-size:14px;font-weight:600;color:var(--ion-text-color,#333);margin-bottom:12px;text-align:center;border-bottom:1px solid var(--ion-border-color,rgba(0,0,0,.1));padding-bottom:8px;line-height:1.3}.legend-tooltip-content[data-v-9aa5994a]{max-height:200px;overflow-y:auto}.legend-tooltip-item[data-v-9aa5994a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:12px;line-height:1.4}.legend-tooltip-extension[data-v-9aa5994a]{color:#4ecdc4;font-family:Courier New,monospace;font-weight:500}.legend-tooltip-count[data-v-9aa5994a]{color:#888;font-size:11px;font-weight:500}.legend-tooltip-more[data-v-9aa5994a]{margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.1);text-align:center;color:#777;font-size:11px;font-style:italic;font-weight:500}.legend-tooltip-fallback[data-v-9aa5994a]{margin-top:8px;padding-top:8px;border-top:1px solid hsla(0,0%,100%,.1);text-align:center;color:#aaa;font-size:10px;font-style:italic}.legend-tooltip-section[data-v-9aa5994a]{font-size:12px;font-weight:600;color:#4ecdc4;margin-bottom:8px;margin-top:12px;line-height:1.3}.legend-tooltip-section[data-v-9aa5994a]:first-child{margin-top:0}.legend-tooltip-languages[data-v-9aa5994a]{line-height:1.5;color:#333;font-size:12px;margin-bottom:6px;font-weight:400}.legend-tooltip-language[data-v-9aa5994a]{margin-right:4px}.other-languages-list[data-v-9aa5994a]{margin-bottom:8px}.file-types-section[data-v-9aa5994a]{border-top:1px solid hsla(0,0%,100%,.1);padding-top:8px}.loc-axis-line[data-v-9aa5994a]{stroke:hsla(0,100%,71%,.3);stroke-width:1}.loc-axis-label[data-v-9aa5994a]{fill:hsla(0,100%,71%,.8);font-size:10px;font-weight:500}.loc-axis-title[data-v-9aa5994a]{fill:hsla(0,100%,71%,.9);font-size:11px;font-weight:600}.loc-trend-line[data-v-9aa5994a]{stroke:#ff6b6b;stroke-width:2;stroke-dasharray:4,4;opacity:.8;fill:none}.loc-data-point[data-v-9aa5994a]{fill:#ff6b6b;opacity:.7;transition:opacity .2s ease,r .2s ease}.loc-data-point[data-v-9aa5994a]:hover{opacity:1;r:4}@media (max-width:768px){.chart-legend[data-v-9aa5994a]{gap:8px}.legend-text[data-v-9aa5994a]{font-size:12px}.loc-axis-label[data-v-9aa5994a],.loc-axis-title[data-v-9aa5994a]{font-size:9px}}.local-github-activity[data-v-f8d05fe0]{width:100%;font-family:Open Sans,Helvetica,Arial,sans-serif;position:relative}.activity-error[data-v-f8d05fe0],.activity-loading[data-v-f8d05fe0]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--ion-color-medium)}.error-content[data-v-f8d05fe0]{text-align:center;padding:20px}.error-icon[data-v-f8d05fe0]{font-size:48px;opacity:.5;margin-bottom:10px}.error-content p[data-v-f8d05fe0]{margin:10px 0;font-size:14px}.error-content small[data-v-f8d05fe0]{display:block;margin-top:8px;opacity:.7;font-size:12px}.loading-spinner[data-v-f8d05fe0]{width:32px;height:32px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;-webkit-animation:spin-f8d05fe0 1s linear infinite;animation:spin-f8d05fe0 1s linear infinite;margin-bottom:10px}@-webkit-keyframes spin-f8d05fe0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-f8d05fe0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.activity-container[data-v-f8d05fe0]{width:100%}.github-calendar-responsive[data-v-f8d05fe0]{display:block}.github-calendar-single[data-v-f8d05fe0]{display:none}.calendar-period[data-v-f8d05fe0]{margin-bottom:24px}.calendar-period[data-v-f8d05fe0]:last-child{margin-bottom:16px}.github-calendar[data-v-f8d05fe0]{position:relative;margin-bottom:8px}.month-labels[data-v-f8d05fe0]{display:flex;justify-content:space-between;height:18px;margin-bottom:6px;margin-left:30px;width:calc(100% - 30px);max-width:400px;padding:0 5px}.month-label[data-v-f8d05fe0]{font-size:11px;color:var(--ion-text-color,#666);font-weight:400;white-space:nowrap;flex-shrink:0}.day-labels[data-v-f8d05fe0]{display:flex;flex-direction:column;gap:2px;float:left;margin-right:6px;margin-top:18px}.day-label[data-v-f8d05fe0]{height:14px;font-size:10px;color:var(--ion-text-color,#666);display:flex;align-items:center;margin-bottom:2px;min-width:24px}.calendar-grid-split[data-v-f8d05fe0]{display:grid;grid-template-columns:repeat(26,1fr);grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:1px;margin-left:30px;width:calc(100% - 30px);aspect-ratio:26/7;max-width:400px}.calendar-grid-split .day-square[data-v-f8d05fe0]{width:100%;height:100%;min-width:8px;min-height:8px}.calendar-grid-full[data-v-f8d05fe0]{display:grid;grid-template-columns:repeat(53,10px);grid-template-rows:repeat(7,10px);grid-auto-flow:column;gap:1px;margin-left:24px}.calendar-grid-full .day-square[data-v-f8d05fe0]{width:10px;height:10px}.day-square[data-v-f8d05fe0]{border-radius:2px;cursor:pointer;transition:all .1s ease}.day-square[data-v-f8d05fe0]:hover{outline:1px solid var(--ion-text-color,#333);outline-offset:1px}.intensity-0[data-v-f8d05fe0]{background-color:var(--github-calendar-c0,#ebedf0)}.intensity-1[data-v-f8d05fe0]{background-color:var(--github-calendar-c1,#9be9a8)}.intensity-2[data-v-f8d05fe0]{background-color:var(--github-calendar-c2,#40c463)}.intensity-3[data-v-f8d05fe0]{background-color:var(--github-calendar-c3,#30a14e)}.intensity-4[data-v-f8d05fe0]{background-color:var(--github-calendar-c4,#216e39)}.custom-tooltip[data-v-f8d05fe0]{position:fixed;background:var(--ion-color-dark,rgba(0,0,0,.9));color:var(--ion-color-light,#fff);padding:8px 12px;border-radius:6px;font-size:12px;pointer-events:none;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,.3);white-space:nowrap}@media (prefers-color-scheme:dark){.custom-tooltip[data-v-f8d05fe0]{background:var(--ion-color-light,hsla(0,0%,100%,.95));color:var(--ion-color-dark,#000)}.day-square[data-v-f8d05fe0]:hover{outline-color:var(--ion-text-color,#ccc)}}.activity-legend[data-v-f8d05fe0]{display:flex;align-items:center;justify-content:center;gap:6px;margin:16px 0;font-size:11px;color:var(--ion-text-color,#666)}.legend-colors[data-v-f8d05fe0]{display:flex;gap:2px}.legend-square[data-v-f8d05fe0]{width:10px;height:10px;border-radius:2px}.legend-text[data-v-f8d05fe0]{color:var(--ion-text-color,#666);font-size:11px}.activity-stats[data-v-f8d05fe0]{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:16px;padding:12px;border-radius:8px;background:var(--ion-color-light,rgba(0,0,0,.02))}@media (prefers-color-scheme:dark){.activity-stats[data-v-f8d05fe0]{background:var(--ion-color-dark,hsla(0,0%,100%,.02))}}.stat-item[data-v-f8d05fe0]{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:100px}.stat-value[data-v-f8d05fe0]{font-size:20px;font-weight:600;color:#333;line-height:1.2}@media (prefers-color-scheme:dark){.stat-value[data-v-f8d05fe0]{color:#333}}.stat-label[data-v-f8d05fe0]{font-size:11px;color:#666;margin-top:2px;line-height:1.2}@media (prefers-color-scheme:dark){.stat-label[data-v-f8d05fe0]{color:#aaa}}.activity-branding[data-v-f8d05fe0]{margin-top:10px;text-align:center}.activity-branding small[data-v-f8d05fe0]{color:var(--ion-color-medium);font-size:11px}[data-v-f8d05fe0]:root{--github-calendar-c0:#ebedf0;--github-calendar-c1:#9be9a8;--github-calendar-c2:#40c463;--github-calendar-c3:#30a14e;--github-calendar-c4:#216e39}@media (prefers-color-scheme:dark){[data-v-f8d05fe0]:root{--github-calendar-c0:#161b22;--github-calendar-c1:#0e4429;--github-calendar-c2:#006d32;--github-calendar-c3:#26a641;--github-calendar-c4:#39d353}}@media (max-width:768px){.github-calendar-responsive[data-v-f8d05fe0]{display:none}.github-calendar-single[data-v-f8d05fe0]{display:block}.github-calendar-single .github-calendar[data-v-f8d05fe0]{overflow-x:auto;padding-bottom:8px}.github-calendar-single .calendar-grid-full[data-v-f8d05fe0]{grid-template-columns:repeat(53,8px);grid-template-rows:repeat(7,8px);grid-auto-flow:column;gap:1px}.github-calendar-single .calendar-grid-full .day-square[data-v-f8d05fe0]{width:8px;height:8px}.github-calendar-single .day-label[data-v-f8d05fe0]{height:8px;font-size:8px;margin-bottom:1px;min-width:20px}.github-calendar-single .month-label[data-v-f8d05fe0]{font-size:9px}.github-calendar-single .day-labels[data-v-f8d05fe0]{margin-top:16px;gap:1px}.github-calendar-single .month-labels[data-v-f8d05fe0]{height:16px;margin-bottom:4px}.activity-stats[data-v-f8d05fe0]{gap:12px}.stat-item[data-v-f8d05fe0]{min-width:80px}.stat-value[data-v-f8d05fe0]{font-size:18px}.stat-label[data-v-f8d05fe0]{font-size:10px}}@media (max-width:480px){.github-calendar-single .calendar-grid-full[data-v-f8d05fe0]{grid-template-columns:repeat(53,7px);grid-template-rows:repeat(7,7px);grid-auto-flow:column}.github-calendar-single .calendar-grid-full .day-square[data-v-f8d05fe0]{width:7px;height:7px}.github-calendar-single .day-label[data-v-f8d05fe0]{height:7px;font-size:7px;min-width:16px}.activity-stats[data-v-f8d05fe0]{flex-direction:column;align-items:center}.stat-item[data-v-f8d05fe0]{flex-direction:row;gap:8px;min-width:auto}}@media (min-width:1200px){.calendar-grid-split[data-v-f8d05fe0],.month-labels[data-v-f8d05fe0]{max-width:520px}.day-label[data-v-f8d05fe0]{height:16px;font-size:11px}.month-label[data-v-f8d05fe0]{font-size:12px}}@media (min-width:900px) and (max-width:1199px){.calendar-grid-split[data-v-f8d05fe0],.month-labels[data-v-f8d05fe0]{max-width:350px}}.local-technology-timeline[data-v-703c6986]{width:100%;font-family:Open Sans,Helvetica,Arial,sans-serif}.timeline-error[data-v-703c6986],.timeline-loading[data-v-703c6986]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--ion-color-medium)}.loading-spinner[data-v-703c6986]{width:32px;height:32px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;-webkit-animation:spin-703c6986 1s linear infinite;animation:spin-703c6986 1s linear infinite;margin-bottom:10px}@media (prefers-color-scheme:dark){.loading-spinner[data-v-703c6986]{border:3px solid hsla(0,0%,100%,.2);border-top:3px solid var(--ion-color-primary,#3880ff)}}@-webkit-keyframes spin-703c6986{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-703c6986{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.timeline-wrapper[data-v-703c6986]{width:100%}.timeline-scroll-container[data-v-703c6986]{width:100%;overflow-x:auto;overflow-y:visible;padding:20px 0 60px 0;background:var(--ion-color-light,#f4f5f8);border-radius:8px;display:flex;justify-content:flex-start}@media (min-width:1200px){.timeline-scroll-container[data-v-703c6986]{justify-content:center}}@media (prefers-color-scheme:dark){.timeline-scroll-container[data-v-703c6986]{background:var(--ion-color-dark,hsla(0,0%,100%,.02))}}.timeline-content[data-v-703c6986]{position:relative;height:140px;margin:0;padding:0 20px;flex-shrink:0}.year-markers[data-v-703c6986]{position:absolute;top:0;left:0;right:0;height:100%}.year-marker[data-v-703c6986]{position:absolute;height:100%;display:flex;flex-direction:column;align-items:center}.year-line[data-v-703c6986]{width:1px;height:calc(100% + 45px);background:var(--ion-color-medium,#ccc);opacity:.3}.year-label[data-v-703c6986]{position:absolute;bottom:-35px;font-size:12px;color:#666;white-space:nowrap}@media (prefers-color-scheme:dark){.year-line[data-v-703c6986]{background:var(--ion-color-medium,#666);opacity:.5}.year-label[data-v-703c6986]{color:#aaa}}.technology-bars[data-v-703c6986]{position:relative;height:100%}.technology-bar[data-v-703c6986]{position:absolute;margin-left:3px;height:28px;border-radius:14px;display:flex;align-items:center;padding:0 10px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.1)}.technology-bar[data-v-703c6986]:hover{transform:scale(1.05);box-shadow:0 4px 8px rgba(0,0,0,.2);z-index:10}@media (prefers-color-scheme:dark){.technology-bar[data-v-703c6986]{box-shadow:0 2px 4px rgba(0,0,0,.4)}.technology-bar[data-v-703c6986]:hover{box-shadow:0 4px 12px rgba(0,0,0,.6)}}.tech-name[data-v-703c6986]{color:#fff;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.technology-labels[data-v-703c6986]{position:relative}.tech-label[data-v-703c6986]{position:absolute;margin-left:3px;font-size:10px;font-weight:600;white-space:nowrap;padding:3px 6px;border-radius:4px;pointer-events:none;display:inline-flex;align-items:center;height:18px;line-height:1}.tech-logo[data-v-703c6986]{width:14px;height:14px;-o-object-fit:contain;object-fit:contain;border-radius:2px;margin-right:4px;flex-shrink:0}.tech-text[data-v-703c6986]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-label[data-v-703c6986]{background:rgba(0,0,0,.85);color:#fff;border:1px solid hsla(0,0%,100%,.3);text-shadow:0 1px 2px rgba(0,0,0,.5)}.overlap-label[data-v-703c6986]{background:hsla(0,0%,100%,.9);color:#333;border:1px solid rgba(0,0,0,.2);font-style:italic}@media (prefers-color-scheme:dark){.entry-label[data-v-703c6986]{background:hsla(0,0%,100%,.95);color:#000;border:1px solid hsla(0,0%,100%,.4);text-shadow:none}.overlap-label[data-v-703c6986]{background:rgba(0,0,0,.9);color:#fff;border:1px solid hsla(0,0%,100%,.3)}}.tech-tooltip[data-v-703c6986]{position:absolute;background:var(--ion-color-dark,#333);color:#fff;padding:12px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:10000;min-width:200px;pointer-events:none}@media (prefers-color-scheme:dark){.tech-tooltip[data-v-703c6986]{background:var(--ion-color-light,#f4f5f8);color:var(--ion-text-color,#333)}}.tech-tooltip h4[data-v-703c6986]{margin:0 0 8px 0;font-size:14px;font-weight:600}.tech-tooltip p[data-v-703c6986]{margin:0 0 8px 0;font-size:12px;opacity:.9}.tech-years[data-v-703c6986]{font-size:11px;font-weight:600;margin-bottom:4px}.tech-category[data-v-703c6986]{font-size:10px;text-transform:uppercase;opacity:.7}.tech-tooltip[data-v-703c6986]:after{content:"";position:absolute;left:50%;transform:translateX(-50%);border:8px solid transparent}.tech-tooltip[data-v-703c6986]:not([data-below]):after{top:100%;border-top-color:var(--ion-color-dark,#333)}.tech-tooltip[data-below][data-v-703c6986]:after{bottom:100%;border-bottom-color:var(--ion-color-dark,#333)}@media (prefers-color-scheme:dark){.tech-tooltip[data-v-703c6986]:not([data-below]):after{border-top-color:var(--ion-color-light,#f4f5f8)}.tech-tooltip[data-below][data-v-703c6986]:after{border-bottom-color:var(--ion-color-light,#f4f5f8)}}.timeline-branding[data-v-703c6986]{margin-top:10px;text-align:center}.timeline-branding small[data-v-703c6986]{color:var(--ion-color-medium);font-size:11px}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar{height:8px}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-track{background:var(--ion-color-light,#f1f1f1);border-radius:4px}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-thumb{background:var(--ion-color-medium,#888);border-radius:4px}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-thumb:hover{background:var(--ion-color-medium-shade,#555)}@media (prefers-color-scheme:dark){.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-track{background:var(--ion-color-dark-shade,hsla(0,0%,100%,.05))}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-thumb{background:var(--ion-color-medium-tint,#999)}.timeline-scroll-container[data-v-703c6986]::-webkit-scrollbar-thumb:hover{background:var(--ion-color-medium,#aaa)}}@media (max-width:768px){.timeline-content[data-v-703c6986]{height:140px}.tech-label[data-v-703c6986]{font-size:9px}}@media (max-width:480px){.timeline-scroll-container[data-v-703c6986]{padding:10px 0 50px 0}.timeline-content[data-v-703c6986]{height:140px}.tech-label[data-v-703c6986]{font-size:8px;padding:1px 4px}}.local-work-experience[data-v-3e6928ac]{width:100%;font-family:Open Sans,Helvetica,Arial,sans-serif}.experience-error[data-v-3e6928ac],.experience-loading[data-v-3e6928ac]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--ion-color-medium)}.error-content[data-v-3e6928ac]{text-align:center;padding:20px}.error-icon[data-v-3e6928ac]{font-size:48px;opacity:.5;margin-bottom:10px}.error-content p[data-v-3e6928ac]{margin:10px 0;font-size:14px}.loading-spinner[data-v-3e6928ac]{width:32px;height:32px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;-webkit-animation:spin-3e6928ac 1s linear infinite;animation:spin-3e6928ac 1s linear infinite;margin-bottom:10px}@-webkit-keyframes spin-3e6928ac{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-3e6928ac{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.experience-grid[data-v-3e6928ac]{display:grid;grid-template-columns:repeat(var(--columns),1fr);gap:24px;width:100%}.company-card[data-v-3e6928ac]{background:var(--ion-card-background,#fff);border-radius:12px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .3s ease;border:1px solid var(--ion-border-color,rgba(0,0,0,.08))}@media (prefers-color-scheme:dark){.company-card[data-v-3e6928ac]{background:var(--ion-card-background,#1e1e1e);border:1px solid var(--ion-border-color,hsla(0,0%,100%,.1));box-shadow:0 2px 8px rgba(0,0,0,.3)}}.company-card[data-v-3e6928ac]:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.15)}.positions-container[data-v-3e6928ac]{margin-top:20px;display:flex;flex-direction:column;gap:16px}.position-card[data-v-3e6928ac]{background:rgba(248,249,250,.9);border-radius:8px;padding:16px;border:1px solid var(--ion-border-color,rgba(0,0,0,.05));transition:all .2s ease}@media (prefers-color-scheme:dark){.position-card[data-v-3e6928ac]{background:rgba(52,58,64,.8);border:1px solid var(--ion-border-color,hsla(0,0%,100%,.08))}}.position-card[data-v-3e6928ac]:hover{background:#f1f3f4}@media (prefers-color-scheme:dark){.position-card[data-v-3e6928ac]:hover{background:#3c4043}}.position-header[data-v-3e6928ac]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;flex-wrap:wrap;gap:8px}.company-header[data-v-3e6928ac]{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.company-logo[data-v-3e6928ac]{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--ion-color-light,#f8f9fa);display:flex;align-items:center;justify-content:center}.company-logo img[data-v-3e6928ac]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.company-info[data-v-3e6928ac]{flex:1}.company-name[data-v-3e6928ac]{font-size:18px;font-weight:600;color:var(--ion-text-color,#333);margin:0 0 4px 0;line-height:1.3}.company-meta[data-v-3e6928ac]{display:flex;flex-direction:column;gap:2px}.company-duration[data-v-3e6928ac],.company-location[data-v-3e6928ac]{font-size:12px;color:var(--ion-color-medium,#666);line-height:1.2}.company-duration[data-v-3e6928ac]{font-weight:500}.position-title[data-v-3e6928ac]{font-size:16px;font-weight:600;color:var(--ion-text-color,#333);margin:0 0 4px 0;line-height:1.3}.position-date[data-v-3e6928ac]{font-size:13px;color:var(--ion-color-primary,#007bff);font-weight:500}.description-section[data-v-3e6928ac]{margin-bottom:16px}.description-content[data-v-3e6928ac]{transition:all .3s ease}.description-content p[data-v-3e6928ac]{font-size:14px;line-height:1.6;color:var(--ion-text-color,#333);margin:0 0 8px 0}.description-content p[data-v-3e6928ac]:last-child{margin-bottom:0}.expand-button[data-v-3e6928ac]{background:none;border:none;color:var(--ion-color-primary,#007bff);font-size:12px;font-weight:500;cursor:pointer;padding:4px 0;margin-top:8px;transition:color .2s ease}.expand-button[data-v-3e6928ac]:hover{color:var(--ion-color-primary-shade,#0056b3)}.technologies-section[data-v-3e6928ac]{margin-bottom:16px}.tech-tags[data-v-3e6928ac]{display:flex;flex-wrap:wrap;gap:6px}.tech-tag[data-v-3e6928ac]{font-size:11px;font-weight:500;padding:4px 8px;border-radius:12px;line-height:1;border:1px solid transparent}.tech-language[data-v-3e6928ac]{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}@media (prefers-color-scheme:dark){.tech-language[data-v-3e6928ac]{background:#1e3a8a;color:#93c5fd;border-color:#3730a3}}.tech-framework[data-v-3e6928ac]{background:#d1fae5;color:#047857;border-color:#6ee7b7}@media (prefers-color-scheme:dark){.tech-framework[data-v-3e6928ac]{background:#064e3b;color:#6ee7b7;border-color:#065f46}}.tech-infrastructure[data-v-3e6928ac]{background:#fed7aa;color:#c2410c;border-color:#fdba74}@media (prefers-color-scheme:dark){.tech-infrastructure[data-v-3e6928ac]{background:#9a3412;color:#fdba74;border-color:#c2410c}}.tech-database[data-v-3e6928ac]{background:#e9d5ff;color:#7c3aed;border-color:#c4b5fd}@media (prefers-color-scheme:dark){.tech-database[data-v-3e6928ac]{background:#581c87;color:#c4b5fd;border-color:#6b21a8}}.tech-security[data-v-3e6928ac]{background:#fecaca;color:#dc2626;border-color:#fca5a5}@media (prefers-color-scheme:dark){.tech-security[data-v-3e6928ac]{background:#991b1b;color:#fca5a5;border-color:#b91c1c}}.tech-blockchain[data-v-3e6928ac]{background:#cffafe;color:#0891b2;border-color:#67e8f9}@media (prefers-color-scheme:dark){.tech-blockchain[data-v-3e6928ac]{background:#164e63;color:#67e8f9;border-color:#0e7490}}.tech-protocol[data-v-3e6928ac]{background:#fce7f3;color:#be185d;border-color:#f9a8d4}@media (prefers-color-scheme:dark){.tech-protocol[data-v-3e6928ac]{background:#831843;color:#f9a8d4;border-color:#9d174d}}.tech-other[data-v-3e6928ac]{background:#f3f4f6;color:#374151;border-color:#d1d5db}@media (prefers-color-scheme:dark){.tech-other[data-v-3e6928ac]{background:#374151;color:#d1d5db;border-color:#4b5563}}.highlights-section[data-v-3e6928ac]{margin-top:16px;padding-top:16px;border-top:1px solid var(--ion-border-color,rgba(0,0,0,.05))}@media (prefers-color-scheme:dark){.highlights-section[data-v-3e6928ac]{border-top:1px solid var(--ion-border-color,hsla(0,0%,100%,.1))}}.highlights-title[data-v-3e6928ac]{font-size:14px;font-weight:600;color:var(--ion-text-color,#333);margin:0 0 8px 0}.highlights-list[data-v-3e6928ac]{list-style:none;padding:0;margin:0}.highlights-list li[data-v-3e6928ac]{font-size:13px;line-height:1.5;color:var(--ion-text-color,#333);margin-bottom:4px;padding-left:16px;position:relative}.highlights-list li[data-v-3e6928ac]:before{content:"•";color:var(--ion-color-primary,#007bff);font-weight:700;position:absolute;left:0}.tech-legend[data-v-3e6928ac]{margin-bottom:24px;padding:16px;background:var(--ion-card-background,#fff);border-radius:8px;border:1px solid var(--ion-border-color,rgba(0,0,0,.08))}@media (prefers-color-scheme:dark){.tech-legend[data-v-3e6928ac]{background:var(--ion-card-background,#1e1e1e);border:1px solid var(--ion-border-color,hsla(0,0%,100%,.1))}}.legend-title[data-v-3e6928ac]{font-size:14px;font-weight:600;color:var(--ion-text-color,#333);margin:0 0 12px 0;text-align:center}.legend-items[data-v-3e6928ac]{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.legend-item[data-v-3e6928ac]{display:flex;align-items:center}.legend-tag[data-v-3e6928ac]{font-size:11px;font-weight:500;padding:4px 8px;border-radius:12px;line-height:1;border:1px solid transparent}.experience-branding[data-v-3e6928ac]{margin-top:20px;text-align:center}.experience-branding small[data-v-3e6928ac]{color:var(--ion-color-medium);font-size:11px}@media (max-width:768px){.experience-grid[data-v-3e6928ac]{gap:16px}.company-card[data-v-3e6928ac]{padding:18px}.company-header[data-v-3e6928ac]{gap:12px;margin-bottom:12px}.company-logo[data-v-3e6928ac]{width:40px;height:40px}.company-name[data-v-3e6928ac]{font-size:16px}.position-title[data-v-3e6928ac]{font-size:15px}.company-meta[data-v-3e6928ac]{flex-direction:row;gap:8px}.company-duration[data-v-3e6928ac]:after{content:" •";margin-left:4px}}@media (max-width:480px){.company-card[data-v-3e6928ac]{padding:16px}.company-header[data-v-3e6928ac]{flex-direction:column;text-align:center;gap:8px}.company-logo[data-v-3e6928ac]{align-self:center}.company-meta[data-v-3e6928ac],.tech-tags[data-v-3e6928ac]{justify-content:center}.position-header[data-v-3e6928ac]{flex-direction:column;align-items:flex-start;gap:4px}.position-card[data-v-3e6928ac]{padding:12px}.positions-container[data-v-3e6928ac]{gap:12px}}:root body{--ion-background-color:#6ac4f5;--ion-background-color-rgb:106,196,245;--ion-toolbar-background:#fff;--dark-text:#181818}@media (prefers-color-scheme:dark){:root body{--ion-background-color:#1a1a1a;--ion-background-color-rgb:26,26,26;--ion-toolbar-background:#2a2a2a;--dark-text:#e0e0e0}}ion-card[data-v-d34d19ee]{--background:#f4f5f8}@media (prefers-color-scheme:dark){ion-card[data-v-d34d19ee]{--background:#222428}}codersrank-timeline[data-v-d34d19ee]{--timeline-item-text-color:var(--dark-text)!important}#links-col[data-v-d34d19ee]{display:flex;align-items:center;justify-content:center}#links-col ion-icon[data-v-d34d19ee]{margin-top:180px}#profile-picture[data-v-d34d19ee]{width:350px;border-radius:1000px;border:8px solid var(--ion-color-dark)}#container[data-v-d34d19ee]{margin:0 auto}a[data-v-d34d19ee]{color:var(--dark-text)}ion-card[data-v-d34d19ee]{overflow:initial}.codersrank-timeline-tooltip[data-v-d34d19ee]{z-index:1000}.large-icon[data-v-d34d19ee]{font-size:50px}@media screen and (min-width:992px){#container[data-v-d34d19ee]{max-width:80vw}}@media screen and (max-width:540px){#profile-picture[data-v-d34d19ee]{width:300px}}@media screen and (max-width:425px){#profile-picture[data-v-d34d19ee]{width:180px}.large-icon[data-v-d34d19ee]{font-size:30px}}:root{--ion-color-primary:#3880ff;--ion-color-primary-rgb:56,128,255;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255,255,255;--ion-color-primary-shade:#3171e0;--ion-color-primary-tint:#4c8dff;--ion-color-secondary:#3dc2ff;--ion-color-secondary-rgb:61,194,255;--ion-color-secondary-contrast:#fff;--ion-color-secondary-contrast-rgb:255,255,255;--ion-color-secondary-shade:#36abe0;--ion-color-secondary-tint:#50c8ff;--ion-color-tertiary:#5260ff;--ion-color-tertiary-rgb:82,96,255;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255,255,255;--ion-color-tertiary-shade:#4854e0;--ion-color-tertiary-tint:#6370ff;--ion-color-success:#2dd36f;--ion-color-success-rgb:45,211,111;--ion-color-success-contrast:#fff;--ion-color-success-contrast-rgb:255,255,255;--ion-color-success-shade:#28ba62;--ion-color-success-tint:#42d77d;--ion-color-warning:#ffc409;--ion-color-warning-rgb:255,196,9;--ion-color-warning-contrast:#000;--ion-color-warning-contrast-rgb:0,0,0;--ion-color-warning-shade:#e0ac08;--ion-color-warning-tint:#ffca22;--ion-color-danger:#eb445a;--ion-color-danger-rgb:235,68,90;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255,255,255;--ion-color-danger-shade:#cf3c4f;--ion-color-danger-tint:#ed576b;--ion-color-dark:#222428;--ion-color-dark-rgb:34,36,40;--ion-color-dark-contrast:#fff;--ion-color-dark-contrast-rgb:255,255,255;--ion-color-dark-shade:#1e2023;--ion-color-dark-tint:#383a3e;--ion-color-medium:#92949c;--ion-color-medium-rgb:146,148,156;--ion-color-medium-contrast:#fff;--ion-color-medium-contrast-rgb:255,255,255;--ion-color-medium-shade:#808289;--ion-color-medium-tint:#9d9fa6;--ion-color-light:#f4f5f8;--ion-color-light-rgb:244,245,248;--ion-color-light-contrast:#000;--ion-color-light-contrast-rgb:0,0,0;--ion-color-light-shade:#d7d8da;--ion-color-light-tint:#f5f6f9}@media (prefers-color-scheme:dark){body{--ion-color-primary:#428cff;--ion-color-primary-rgb:66,140,255;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255,255,255;--ion-color-primary-shade:#3a7be0;--ion-color-primary-tint:#5598ff;--ion-color-secondary:#50c8ff;--ion-color-secondary-rgb:80,200,255;--ion-color-secondary-contrast:#fff;--ion-color-secondary-contrast-rgb:255,255,255;--ion-color-secondary-shade:#46b0e0;--ion-color-secondary-tint:#62ceff;--ion-color-tertiary:#6a64ff;--ion-color-tertiary-rgb:106,100,255;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255,255,255;--ion-color-tertiary-shade:#5d58e0;--ion-color-tertiary-tint:#7974ff;--ion-color-success:#2fdf75;--ion-color-success-rgb:47,223,117;--ion-color-success-contrast:#000;--ion-color-success-contrast-rgb:0,0,0;--ion-color-success-shade:#29c467;--ion-color-success-tint:#44e283;--ion-color-warning:#ffd534;--ion-color-warning-rgb:255,213,52;--ion-color-warning-contrast:#000;--ion-color-warning-contrast-rgb:0,0,0;--ion-color-warning-shade:#e0bb2e;--ion-color-warning-tint:#ffd948;--ion-color-danger:#ff4961;--ion-color-danger-rgb:255,73,97;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255,255,255;--ion-color-danger-shade:#e04055;--ion-color-danger-tint:#ff5b71;--ion-color-dark:#f4f5f8;--ion-color-dark-rgb:244,245,248;--ion-color-dark-contrast:#000;--ion-color-dark-contrast-rgb:0,0,0;--ion-color-dark-shade:#d7d8da;--ion-color-dark-tint:#f5f6f9;--ion-color-medium:#989aa2;--ion-color-medium-rgb:152,154,162;--ion-color-medium-contrast:#000;--ion-color-medium-contrast-rgb:0,0,0;--ion-color-medium-shade:#86888f;--ion-color-medium-tint:#a2a4ab;--ion-color-light:#222428;--ion-color-light-rgb:34,36,40;--ion-color-light-contrast:#fff;--ion-color-light-contrast-rgb:255,255,255;--ion-color-light-shade:#1e2023;--ion-color-light-tint:#383a3e}.ios body{--ion-background-color:#000;--ion-background-color-rgb:0,0,0;--ion-text-color:#fff;--ion-text-color-rgb:255,255,255;--ion-color-step-50:#0d0d0d;--ion-color-step-100:#1a1a1a;--ion-color-step-150:#262626;--ion-color-step-200:#333;--ion-color-step-250:#404040;--ion-color-step-300:#4d4d4d;--ion-color-step-350:#595959;--ion-color-step-400:#666;--ion-color-step-450:#737373;--ion-color-step-500:grey;--ion-color-step-550:#8c8c8c;--ion-color-step-600:#999;--ion-color-step-650:#a6a6a6;--ion-color-step-700:#b3b3b3;--ion-color-step-750:#bfbfbf;--ion-color-step-800:#ccc;--ion-color-step-850:#d9d9d9;--ion-color-step-900:#e6e6e6;--ion-color-step-950:#f2f2f2;--ion-item-background:#000;--ion-card-background:#1c1c1d}.ios ion-modal{--ion-background-color:var(--ion-color-step-100);--ion-toolbar-background:var(--ion-color-step-150);--ion-toolbar-border-color:var(--ion-color-step-250)}.md body{--ion-background-color:#121212;--ion-background-color-rgb:18,18,18;--ion-text-color:#fff;--ion-text-color-rgb:255,255,255;--ion-border-color:#222;--ion-color-step-50:#1e1e1e;--ion-color-step-100:#2a2a2a;--ion-color-step-150:#363636;--ion-color-step-200:#414141;--ion-color-step-250:#4d4d4d;--ion-color-step-300:#595959;--ion-color-step-350:#656565;--ion-color-step-400:#717171;--ion-color-step-450:#7d7d7d;--ion-color-step-500:#898989;--ion-color-step-550:#949494;--ion-color-step-600:#a0a0a0;--ion-color-step-650:#acacac;--ion-color-step-700:#b8b8b8;--ion-color-step-750:#c4c4c4;--ion-color-step-800:#d0d0d0;--ion-color-step-850:#dbdbdb;--ion-color-step-900:#e7e7e7;--ion-color-step-950:#f3f3f3;--ion-item-background:#1e1e1e;--ion-toolbar-background:#1f1f1f;--ion-tab-bar-background:#1f1f1f;--ion-card-background:#1e1e1e}}