:root{font-family:var(--system-font);line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--text, rgba(255, 255, 255, .87));background-color:var(--background, #242424);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--terminal-green: #00e600;--accent-color: #646cff;--accent-color-hover: #535bf2;--terminal-font: "JetBrainsMono", "Courier New", "Monaco", "Menlo", monospace;--system-font: system-ui, Avenir, Helvetica, Arial, sans-serif}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html,body{margin:0;padding:0;height:100%;overflow:hidden;background-color:var(--background, #000000)}#root{height:100vh;width:100vw}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}::selection{background-color:var(--selection-background, #4a5568);color:var(--selection-text, #ffffff)}::-moz-selection{background-color:var(--selection-background, #4a5568);color:var(--selection-text, #ffffff)}.cursor{color:var(--terminal-green);animation:blink 1s ease-in-out infinite}.matrix-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.system-label{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.system-text{white-space:pre-wrap;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.user-prompt{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.user-text{word-wrap:break-word;overflow-wrap:break-word;flex:1;min-width:0;text-indent:0;padding-left:0;line-height:1.5;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.prompt-line .user-text{display:inline}.bot-prompt{color:var(--bot-prompt, #fbbf24);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.bot-text{color:var(--bot-text, #86efac);white-space:pre-wrap;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;flex:1;min-width:0;text-indent:0;padding-left:0;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.prompt-line .bot-text{display:inline}.prompt-line .bot-text:before{content:"";display:block;height:0}.prompt-line .bot-text br+*{text-indent:0;margin-left:0}.streaming-cursor{animation:blink 1s infinite;color:var(--terminal-green);font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.plain-message{margin:8px 0;padding:0;line-height:1.5}.plain-text{display:block;word-wrap:break-word;overflow-wrap:break-word;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;color:inherit;font-family:inherit;font-size:inherit}.history-message{margin:8px 0}.history-content{white-space:pre-wrap;line-height:1.4;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.ls-message{margin:8px 0;padding:0 0 0 16px}.ls-content{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.ls-column{display:flex;flex-direction:column}.ls-section-title{margin:0 0 6px;font-weight:700}.ls-command-row{display:flex;flex-direction:row;align-items:baseline;padding:0 0 0 16px;gap:36px}.ls-command-name{width:160px;flex-shrink:0;white-space:nowrap}.ls-command-desc{flex:1}@media (max-width: 768px){.ls-content{grid-template-columns:1fr;gap:16px}}.theme-header-text{margin-bottom:8px;padding-left:16px;font-weight:700}.theme-name{padding-left:32px}.theme-list{display:flex;flex-direction:column;margin-bottom:8px}.contact-header{padding:0 0 0 16px;margin-bottom:8px;font-weight:700}.contact-items{margin-left:16px}.project-url{margin-bottom:5px;display:flex;align-items:center}.url-label{font-weight:700;margin-right:5px}.url-container{position:relative;display:inline-block;flex:1}.clickable-url{cursor:default;transition:text-decoration .2s;word-break:break-all;display:inline-block}.clickable-url:hover{text-decoration:underline}.clickable-url:hover+.follow-link-tooltip{opacity:1;visibility:visible}.follow-link-tooltip{position:absolute;bottom:100%;left:0;background-color:var(--terminal-background);padding:6px 10px;border-radius:4px;font-size:.85em;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:10;border:1px solid var(--terminal-border);box-shadow:0 2px 8px #0000004d;margin-bottom:4px;font-weight:700}.follow-link-tooltip:hover{opacity:1;visibility:visible}.follow-link-text{color:#007acc;cursor:pointer}.follow-link-hint{color:#fff}.clickable-url.modifier-pressed{cursor:pointer}.contact-item{display:flex;align-items:center;margin-bottom:8px;padding:0 0 0 16px;gap:10px}.contact-item .project-url{margin-bottom:0;flex:1}.contact-item .url-label{display:none}.contact-item .url-container{flex:1}.contact-icon{width:16px;height:16px;min-width:16px;flex-shrink:0;filter:invert(1) brightness(.8);opacity:.9}.education-display{line-height:1.4}.education-display-title{font-size:1.1em;font-weight:700}.education-item{margin-bottom:8px;padding:10px 10px 10px 16px}.education-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.study-type{font-weight:700;font-size:1.1em;opacity:.9}.study-dates{font-size:.9em;font-weight:700;opacity:.9}.university-info{margin-bottom:8px}.university-name{font-weight:700;margin-bottom:3px;font-size:1em;opacity:.8}.faculty-info{margin-left:10px}.faculty,.primary-field,.secondary-field,.thesis{margin-bottom:3px;font-size:.9em;line-height:1.4}.faculty{font-weight:400}.thesis{font-style:italic;font-weight:400;margin-top:5px;opacity:.9}.skills-display{line-height:1.4;margin:10px 0}.skills-display-title{padding:0 0 0 16px;margin-bottom:8px;font-weight:700}.skills-grid{padding:0 32px;display:grid;grid-template-columns:1fr;gap:16px}.skill-category{display:grid;grid-template-columns:1fr;gap:8px;padding:2px 0}.category-name{font-weight:700;margin-bottom:4px}.category-items{display:flex;flex-wrap:wrap;gap:2px;line-height:1.6}.skill-item{font-weight:400}@media (min-width: 768px){.skills-grid{grid-template-columns:1fr;gap:8px}.skill-category{grid-template-columns:200px 1fr;align-items:start;gap:16px}.category-name{margin-bottom:0;text-align:left}.category-items{flex:1}}.project-item{padding:16px}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.project-title{font-weight:700}.project-description{margin-bottom:10px;line-height:1.4}.project-urls{margin-left:10px}.projects-display{line-height:1.4}.projects-display-title{padding-left:16px;font-size:1.1em;font-weight:700}.experience-display{line-height:1.4;margin:10px 0}.experience-display-title{padding-left:16px;font-size:1rem;font-weight:700;margin-bottom:8px}.job-item{margin-bottom:15px;padding:0 16px}.job-header{display:flex;justify-content:center;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:10px}.job-title-company{font-weight:700;font-size:1rem;flex:1}.job-dates{font-size:.9em;font-weight:700;flex:0 0 auto}.job-responsibilities{margin-top:4px;display:grid;grid-template-columns:1fr;gap:6px}.responsibility-item{display:flex;align-items:flex-start;margin-left:16px}.bullet{margin-right:6px;font-weight:700;margin-top:1px;font-size:.9rem}.responsibility-text{line-height:1.4;flex:1}.selection-list{line-height:1.4;margin:10px 0;outline:none}.selection-title{font-weight:700;margin-bottom:10px;font-size:1.1em}.selection-options{margin-left:10px}.selection-option{display:flex;align-items:center;margin-bottom:8px;padding:4px 8px;border-radius:3px;transition:background-color .2s}.selection-option.selected{background-color:var(--terminal-background);border:1px solid var(--terminal-border)}.checkbox{font-weight:700;margin-right:10px;min-width:30px}.option-label{flex:1}.selection-instructions{font-size:.9em;margin-top:15px;font-style:italic;opacity:.8}.selection-list.disabled{opacity:.7;pointer-events:none}.selection-option.disabled{opacity:.8}.selection-option.disabled.selected{background-color:transparent;border:none}.cv-download-display{line-height:1.4;margin:10px 0}.cv-download-display-title{padding-left:16px;font-size:1em;font-weight:700}.about-content{padding:0 32px}.about-bio{text-align:justify;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.message{margin-bottom:4px}.system-message{margin-bottom:16px}.user-message,.bot-message,.typing-message{margin-bottom:4px}.component-message{padding:10px 0}.input-line{display:flex;align-items:baseline;flex-wrap:wrap;word-wrap:break-word;overflow-wrap:break-word}.terminal-input{flex:1;background:transparent;color:var(--input-text, #f3f4f6);border:none;outline:none;font-family:inherit;font-size:inherit;line-height:1.5;min-width:0;caret-color:var(--terminal-green);word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;vertical-align:baseline;padding:0;margin:0}.terminal-input::placeholder{color:var(--scrollbar-thumb, #6b7280)}.terminal-input:focus{outline:none}.prompt-line{display:flex;align-items:flex-start;flex-wrap:wrap;word-wrap:break-word;overflow-wrap:break-word}.user-prompt{color:var(--prompt-user, #60a5fa);line-height:1.5;vertical-align:baseline}.prompt-separator{color:var(--prompt-separator, #ffffff);line-height:1.5;vertical-align:baseline}.prompt-path{color:var(--prompt-path, #a855f7);line-height:1.5;vertical-align:baseline}.prompt-dollar{color:var(--prompt-dollar, #ffffff);line-height:1.5;vertical-align:baseline;margin-right:.25em}.input-container{position:relative}.suggestions-container{margin-top:.5em;background:transparent;border-radius:4px;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.suggestions-label{color:var(--text-muted, #888888);margin-bottom:.25em;opacity:.5}.suggestions-list{display:flex;flex-direction:column;gap:.125em}.suggestion-item{display:flex;align-items:center;gap:4em;padding:.25em 0;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4}.suggestion-command{color:var(--text-muted, #888888);opacity:.5;min-width:fit-content;flex-shrink:0}.suggestion-separator{color:var(--text-muted, #888888);opacity:.5;flex-shrink:0;margin-right:0}.suggestion-description{color:var(--text-muted, #888888);opacity:.5;flex:1;word-wrap:break-word;overflow-wrap:break-word;font-style:italic}.terminal-header{background-color:var(--header-background, #2d2d2d);padding:4px 8px;display:flex;justify-content:center;align-items:center;cursor:move;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;position:relative;border-radius:8px 8px 0 0;border-bottom:1px solid var(--terminal-border, #666666)}.terminal-prompt{color:var(--header-text, #b8b8b8);font-size:16px;font-weight:700;letter-spacing:.5px}.maximize-btn{background:var(--maximize-button, #28ca42);border:none;width:12px;height:12px;border-radius:50%;cursor:pointer;transition:all .2s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;padding:0;margin:0;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.maximize-btn.maximized{background:var(--maximize-button-maximized, #ffbd2e)}.maximize-btn:active{transform:scale(.95)}@media (max-width: 768px){.terminal-header{padding:6px 8px}.terminal-prompt{font-size:11px}.maximize-btn{width:10px;height:10px}}.terminal-container{background-color:transparent;color:var(--terminal-text, var(--terminal-green));font-family:var(--terminal-font);font-size:16px;position:relative;z-index:1}.terminal-rnd{background-color:var(--terminal-background, #000000);border-radius:8px;border:1px solid var(--terminal-border, #666666);overflow:hidden}.terminal-content{flex:1;overflow-y:auto;padding:16px;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;min-height:0;max-height:calc(100% - 70px);margin-top:0}.terminal-content::-webkit-scrollbar{width:8px}.terminal-content::-webkit-scrollbar-track{background:var(--scrollbar-track, #000000)}.terminal-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #4a5568);border-radius:4px}.terminal-content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #6b7280)}@media (max-width: 768px){.terminal-container{font-size:12px;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999}.terminal-rnd{width:100vw!important;height:100vh!important;top:0!important;left:0!important;transform:none!important;border-radius:0;border:none;max-width:none!important;max-height:none!important;min-width:100vw!important;min-height:100vh!important}.terminal-content{max-height:calc(100vh - 100px)}.terminal-rnd .react-resizable-handle{display:none!important}}
