@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary: #090a0c;--bg-secondary: #111215;--bg-card: #15171b;--bg-card-hover: #1b1e24;--bg-card-subtle: #121317;--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .18);--border-subtle: rgba(255, 255, 255, .04);--text-primary: #f3f4f6;--text-secondary: #9aa0ac;--text-muted: #5e6472;--text-highlight: #ffffff;--accent-blue: #3b82f6;--accent-blue-hover: #60a5fa;--accent-emerald: #10b981;--accent-amber: #f59e0b;--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", SFMono-Regular, Menlo, Monaco, Consolas, monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px;--max-width: 1160px;--transition-fast: .15s ease;--transition-smooth: .25s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;color-scheme:dark;font-size:16px}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);line-height:1.6;overflow-x:hidden;min-height:100vh;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.75rem}section{padding:5rem 0;position:relative}.section-header{margin-bottom:2.5rem}.section-tag{display:inline-block;font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.05em;color:var(--text-muted);text-transform:uppercase;margin-bottom:.5rem}.section-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;letter-spacing:-.02em;color:var(--text-highlight);margin-bottom:.6rem;line-height:1.25}.section-subtitle{font-size:1.05rem;color:var(--text-secondary);line-height:1.6;max-width:680px}a{color:inherit;text-decoration:none}.text-mono{font-family:var(--font-mono)}.navbar{position:fixed;top:1rem;left:50%;transform:translate(-50%);width:calc(100% - 2.5rem);max-width:var(--max-width);z-index:100;transition:all var(--transition-smooth)}.navbar-inner{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;background:#111215d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:0 8px 24px #0006}.nav-brand{display:flex;align-items:center;gap:.65rem;color:var(--text-highlight);font-weight:600;font-size:1rem;letter-spacing:-.01em}.brand-symbol{width:28px;height:28px;border-radius:var(--radius-sm);background:#1f2229;border:1px solid var(--border-hover);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:.82rem;color:var(--text-primary)}.nav-links{display:flex;align-items:center;gap:1.5rem;list-style:none}.nav-link{font-size:.88rem;font-weight:500;color:var(--text-secondary);transition:color var(--transition-fast);padding:.25rem 0;position:relative}.nav-link:hover,.nav-link.active{color:var(--text-highlight)}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:var(--text-highlight);border-radius:var(--radius-full)}.nav-actions{display:flex;align-items:center;gap:.75rem}.status-pill{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:var(--text-secondary);background:#ffffff0a;border:1px solid var(--border);padding:.3rem .7rem;border-radius:var(--radius-full)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-emerald)}.mobile-toggle{display:none;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-family:var(--font-heading);font-size:.9rem;font-weight:500;padding:.55rem 1.15rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn-primary{background:var(--text-highlight);color:#090a0c!important;border:1px solid var(--text-highlight);font-weight:600}.btn-primary:hover{background:#e4e4e7;border-color:#e4e4e7;transform:translateY(-1px)}.btn-secondary{background:#191b21;color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:#21252d;border-color:var(--border-hover);color:var(--text-highlight)}.btn-outline{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-outline:hover{background:#ffffff0a;color:var(--text-highlight);border-color:var(--border-hover)}.btn-subtle{background:transparent;color:var(--text-secondary);border:none;padding:.35rem .75rem;font-size:.84rem}.btn-subtle:hover{color:var(--text-highlight)}.live-dot-mini{width:6px;height:6px;border-radius:50%;background:var(--accent-emerald)}.hero{padding-top:8rem;padding-bottom:4rem}.hero-container{display:grid;grid-template-columns:1.25fr .85fr;gap:3.5rem;align-items:start}.hero-kicker{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted);margin-bottom:1.25rem;letter-spacing:.02em}.kicker-divider{color:#ffffff26}.hero-title{font-family:var(--font-heading);font-size:2.75rem;font-weight:700;line-height:1.18;letter-spacing:-.03em;color:var(--text-highlight);margin-bottom:1.5rem}.hero-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.65;margin-bottom:2rem}.hero-actions{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-bottom:2.25rem}.hero-socials{display:flex;align-items:center;gap:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.social-link{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:color var(--transition-fast);padding:0}.social-link:hover{color:var(--text-highlight)}.hero-sidebar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;display:flex;flex-direction:column;gap:1.75rem}.sidebar-block{display:flex;flex-direction:column;gap:.85rem}.sidebar-label{font-family:var(--font-mono);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.tech-pills-list{display:flex;flex-wrap:wrap;gap:.4rem}.tech-tag{font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);padding:.2rem .55rem;border-radius:var(--radius-sm)}.highlights-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.highlight-item{display:flex;flex-direction:column;gap:.25rem;padding:.85rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.highlight-val{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--text-highlight);letter-spacing:-.02em}.highlight-desc{font-size:.78rem;color:var(--text-muted);line-height:1.4}.platforms-section{border-top:1px solid var(--border-subtle);background:#0b0d10}.platforms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.platform-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:inherit;transition:all var(--transition-fast)}.platform-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-2px)}.platform-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.platform-identity{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0}.platform-domain{font-family:var(--font-heading);font-size:.92rem;font-weight:700;color:var(--text-highlight);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.live-indicator{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;color:var(--accent-emerald);background:#10b9811a;border:1px solid rgba(16,185,129,.2);padding:.18rem .55rem;border-radius:var(--radius-full);white-space:nowrap}.live-indicator.neutral{color:var(--text-secondary);background:#ffffff0d;border-color:var(--border)}.platform-arrow{color:var(--text-muted);transition:all var(--transition-fast)}.platform-card:hover .platform-arrow{color:var(--text-highlight);transform:translate(2px,-2px)}.platform-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--text-highlight);margin-bottom:.5rem}.platform-desc{font-size:.88rem;color:var(--text-secondary);line-height:1.55;margin-bottom:1.25rem}.platform-tech-tags{display:flex;flex-wrap:wrap;gap:.35rem}.projects-section{border-top:1px solid var(--border-subtle)}.portfolio-controls-bar{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2.5rem}.search-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.search-input-icon{position:absolute;left:1rem;color:var(--text-muted);pointer-events:none}.project-search-input{width:100%;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 2.5rem .75rem 2.75rem;font-family:var(--font-body);font-size:.92rem;color:var(--text-highlight);transition:border-color var(--transition-fast)}.project-search-input::placeholder{color:var(--text-muted)}.project-search-input:focus{outline:none;border-color:var(--border-hover);background:var(--bg-card)}.project-search-clear{position:absolute;right:.85rem;background:#ffffff14;border:none;color:var(--text-secondary);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.filter-pills{display:flex;flex-wrap:wrap;gap:.4rem}.filter-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-body);font-size:.84rem;font-weight:500;padding:.4rem .85rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:.35rem}.filter-btn:hover{background:#ffffff0a;color:var(--text-highlight)}.filter-btn.active{background:#21252d;color:var(--text-highlight);border-color:#fff3;font-weight:600}.filter-count{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.filter-btn.active .filter-count{color:var(--text-secondary)}.no-projects-message{text-align:center;padding:3.5rem 1rem;background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);margin-bottom:2rem}.no-projects-message h3{font-size:1.25rem;font-weight:600;margin-bottom:.4rem;color:var(--text-highlight)}.no-projects-message p{color:var(--text-muted);font-size:.9rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.65rem;display:flex;flex-direction:column;justify-content:space-between;transition:all var(--transition-fast)}.project-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover)}.project-card-top{display:flex;flex-direction:column}.project-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.project-badge{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--text-muted);background:#ffffff0a;border:1px solid var(--border-subtle);padding:.15rem .5rem;border-radius:var(--radius-sm)}.status-pill-live{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:500;color:var(--accent-emerald)}.status-pill-featured{font-size:.72rem;font-weight:500;color:var(--text-secondary)}.project-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--text-highlight);margin-bottom:.5rem;line-height:1.3}.project-tagline{font-size:.88rem;color:var(--text-secondary);line-height:1.55;margin-bottom:1.25rem}.project-tech-stack{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.5rem}.project-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1.15rem;border-top:1px solid var(--border-subtle);margin-top:auto}.card-actions-left{display:flex;align-items:center;gap:.5rem}.btn-live-launch{font-family:var(--font-heading);font-size:.8rem;font-weight:600;color:var(--text-highlight)!important;background:#1f232b;border:1px solid var(--border);padding:.3rem .65rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:.3rem;transition:all var(--transition-fast)}.btn-live-launch:hover{background:#2b303b;border-color:var(--border-hover)}.btn-inspect{font-family:var(--font-heading);font-size:.84rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;padding:.3rem 0;transition:color var(--transition-fast)}.btn-inspect:hover{color:var(--text-highlight)}.project-links{display:flex;align-items:center;gap:.65rem}.project-link-icon{color:var(--text-muted);transition:color var(--transition-fast)}.project-link-icon:hover{color:var(--text-highlight)}.experience-section{border-top:1px solid var(--border-subtle);background:#0b0d10}.section-header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.timeline{display:flex;flex-direction:column;gap:1.75rem;position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;top:.5rem;bottom:.5rem;left:.45rem;width:1px;background:var(--border)}.timeline-item{position:relative}.timeline-node{position:absolute;top:1.25rem;left:-2rem;width:9px;height:9px;border-radius:50%;background:var(--text-muted);border:2px solid var(--bg-primary)}.timeline-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.timeline-role{font-size:1.15rem;font-weight:600;color:var(--text-highlight);margin-bottom:.2rem}.timeline-company{font-size:.88rem;color:var(--text-secondary)}.timeline-period{font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border-subtle);padding:.2rem .55rem;border-radius:var(--radius-sm)}.timeline-bullets{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.timeline-bullets li{font-size:.9rem;color:var(--text-secondary);line-height:1.55;position:relative;padding-left:1.2rem}.timeline-bullets li:before{content:"—";position:absolute;left:0;color:var(--text-muted)}.timeline-skills{display:flex;flex-wrap:wrap;gap:.35rem;padding-top:.85rem;border-top:1px solid var(--border-subtle)}.skills-section{border-top:1px solid var(--border-subtle)}.skills-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.skill-category-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem}.skill-category-header{display:flex;align-items:center;gap:.65rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-subtle)}.skill-category-icon{color:var(--text-secondary)}.skill-category-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:600;color:var(--text-highlight)}.skill-list{display:flex;flex-direction:column;gap:.85rem}.skill-item{display:flex;flex-direction:column;gap:.35rem}.skill-info{display:flex;align-items:center;justify-content:space-between;font-size:.86rem}.skill-name{color:var(--text-primary);font-weight:500}.skill-exp-badge{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted)}.skill-bar-bg{width:100%;height:4px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.skill-bar-fill{height:100%;background:#3b82f6;border-radius:var(--radius-full)}.hardware-section{border-top:1px solid var(--border-subtle);background:#0b0d10}.hardware-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.hardware-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.75rem;display:flex;flex-direction:column;justify-content:space-between}.hardware-badge{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.hardware-card-title{font-family:var(--font-heading);font-size:1.35rem;font-weight:600;color:var(--text-highlight);margin-bottom:.75rem}.hardware-card-desc{font-size:.92rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.spec-item{display:flex;flex-direction:column;gap:.15rem}.spec-key{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);text-transform:uppercase}.spec-val{font-size:.88rem;font-weight:500;color:var(--text-primary)}.contact-section{border-top:1px solid var(--border-subtle)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:2.5rem}.contact-info-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.75rem;display:flex;flex-direction:column;justify-content:space-between}.contact-card-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--text-highlight);margin-bottom:1.5rem}.contact-rows{display:flex;flex-direction:column;gap:1.25rem}.contact-row{display:flex;flex-direction:column;gap:.25rem}.contact-label{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted);text-transform:uppercase}.contact-value{font-size:.95rem;color:var(--text-primary)}.contact-value-link{font-size:1rem;font-weight:500;color:var(--text-highlight);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#ffffff40;transition:text-decoration-color var(--transition-fast)}.contact-value-link:hover{text-decoration-color:var(--text-highlight)}.status-active{color:var(--accent-emerald)}.contact-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{font-size:.84rem;font-weight:500;color:var(--text-secondary)}.form-input,.form-textarea{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.65rem .85rem;color:var(--text-highlight);font-family:var(--font-body);font-size:.92rem;transition:border-color var(--transition-fast)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--border-hover);background:var(--bg-card-hover)}.form-textarea{min-height:120px;resize:vertical}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;visibility:hidden;transition:all var(--transition-smooth)}.modal-overlay.open{opacity:1;visibility:visible}.modal-container{background:var(--bg-card);border:1px solid var(--border-hover);border-radius:var(--radius-lg);width:100%;max-width:760px;max-height:88vh;overflow-y:auto;padding:2.25rem;box-shadow:0 20px 50px #0009;transform:translateY(15px) scale(.98);transition:all var(--transition-smooth);position:relative}.modal-overlay.open .modal-container{transform:translateY(0) scale(1)}.modal-close-btn{position:absolute;top:1.5rem;right:1.5rem;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.modal-close-btn:hover{color:var(--text-highlight);border-color:var(--border-hover)}.modal-top-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-right:2.5rem}.modal-badge{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border);padding:.2rem .55rem;border-radius:var(--radius-sm)}.modal-kb-hint{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.modal-title{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--text-highlight);margin-bottom:.75rem;line-height:1.25}.modal-description{font-size:.98rem;color:var(--text-secondary);line-height:1.65;margin-bottom:1.75rem}.modal-section-heading{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--text-highlight);margin-bottom:.75rem}.modal-architecture-list{list-style:none;display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.75rem}.modal-architecture-list li{font-size:.9rem;color:var(--text-secondary);line-height:1.5;position:relative;padding-left:1.2rem}.modal-architecture-list li:before{content:"—";position:absolute;left:0;color:var(--text-muted)}.modal-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1.75rem}.modal-metric-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.86rem;color:var(--text-primary)}.modal-primary-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.modal-tabs{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border);padding-bottom:.75rem}.modal-tab-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:var(--font-mono);font-size:.82rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.modal-tab-btn:hover{color:var(--text-highlight);border-color:var(--border-hover);background:var(--bg-card-hover)}.modal-tab-btn.active{color:var(--text-highlight);background:#1e222b;border-color:var(--accent-blue);box-shadow:0 0 12px #3b82f626}.modal-tab-panel{display:none}.modal-tab-panel.active{display:block;animation:fadeIn .2s ease-in-out}.modal-preview-bar{display:flex;align-items:center;justify-content:space-between;background:#11141a;border:1px solid var(--border);border-bottom:none;border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);padding:.6rem 1rem;gap:.75rem}.preview-url-display{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.78rem;color:var(--text-secondary);background:#00000059;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.25rem .75rem;max-width:480px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-secure-icon{color:var(--accent-emerald);display:flex;align-items:center;flex-shrink:0}.modal-iframe-wrapper{position:relative;width:100%;height:580px;background:#08090b;border:1px solid var(--border);border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);overflow:hidden;margin-bottom:1.5rem}.modal-preview-iframe{width:100%;height:100%;border:none;display:block;background:#0a0c10}.modal-container.has-live-preview{max-width:980px}.toast{position:fixed;bottom:2rem;right:2rem;background:#181a20;border:1px solid var(--border-hover);border-radius:var(--radius-sm);padding:.75rem 1.15rem;display:flex;align-items:center;gap:.65rem;font-size:.88rem;color:var(--text-primary);box-shadow:0 10px 30px #00000080;transform:translateY(100px);opacity:0;visibility:hidden;transition:all var(--transition-smooth);z-index:1100}.toast.show{transform:translateY(0);opacity:1;visibility:visible}footer{padding:4rem 0 2rem;border-top:1px solid var(--border-subtle);background:#08090a}.footer-inner{display:flex;flex-direction:column;gap:2rem}.footer-top{display:flex;flex-direction:column;gap:.5rem}.footer-brand{display:flex;align-items:center;gap:.65rem;font-weight:600;color:var(--text-highlight)}.footer-tagline{font-size:.9rem;color:var(--text-muted)}.footer-links{display:flex;flex-wrap:wrap;gap:1.5rem;list-style:none}.footer-link{font-size:.88rem;color:var(--text-secondary);transition:color var(--transition-fast)}.footer-link:hover{color:var(--text-highlight)}.footer-bottom{padding-top:1.5rem;border-top:1px solid var(--border-subtle);font-size:.82rem;color:var(--text-muted)}@media(max-width:1024px){.hero-container{grid-template-columns:1fr;gap:2.5rem}.hero-title{font-size:2.35rem}.platforms-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.hardware-grid,.contact-grid{grid-template-columns:1fr}}@media(max-width:768px){.platforms-grid{grid-template-columns:1fr;gap:1rem}.modal-iframe-wrapper{height:420px}.preview-url-display{max-width:260px}.nav-links,.status-pill{display:none}.mobile-toggle{display:block}.hero{padding-top:6.5rem}.hero-title{font-size:2rem}.hero-socials{flex-direction:column;align-items:flex-start;gap:.85rem}.projects-grid,.highlights-grid{grid-template-columns:1fr}.modal-container{padding:1.5rem}.modal-title{font-size:1.4rem}.modal-top-bar{flex-direction:column;align-items:flex-start;gap:.5rem}}@media print{html,body{background:#fff!important;color:#111827!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:11pt!important;line-height:1.4!important}.ambient-glow,.tactical-grid-bg,.cursor-spotlight,.navbar,.mobile-toggle,.hero-actions,.hero-socials,.stats-bar,.filter-pills,.btn-inspect,.modal-overlay,.toast,.cv-section-controls,.contact-form,.copy-email-btn,footer,.btn{display:none!important}.container{max-width:100%!important;padding:0!important;margin:0!important}section{padding:1.5rem 0!important;page-break-inside:avoid}.hero{min-height:auto!important;padding:1rem 0!important;display:block!important}.hero-grid{display:block!important}.hero-title{font-size:20pt!important;color:#000!important;margin-bottom:.5rem!important}.hero-title .title-accent{-webkit-text-fill-color:#000000!important;color:#000!important;display:inline!important}.hero-description{font-size:10pt!important;color:#374151!important;margin-bottom:1rem!important}.tactical-hud{display:none!important}.section-header{text-align:left!important;margin-bottom:1rem!important}.section-title{font-size:14pt!important;color:#111827!important;border-bottom:2px solid #e5e7eb!important;padding-bottom:.3rem!important;margin-bottom:.75rem!important}.section-title .gradient-text{-webkit-text-fill-color:#111827!important;color:#111827!important}.section-subtitle,.section-tag{display:none!important}.timeline{padding-left:0!important}.timeline:before,.timeline-node{display:none!important}.timeline-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0 0 1.25rem!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.timeline-period{color:#4b5563!important;background:transparent!important;font-weight:700!important;padding:0!important}.timeline-role{font-size:12pt!important;color:#111827!important;font-weight:700!important}.timeline-company{color:#2563eb!important;font-size:10.5pt!important;margin-bottom:.5rem!important}.timeline-bullets li{color:#374151!important;font-size:9.5pt!important;margin-bottom:.3rem!important;padding-left:1rem!important}.timeline-bullets li:before{color:#111827!important}.tech-tag{background:#f3f4f6!important;color:#374151!important;border:1px solid #d1d5db!important;font-size:8pt!important}.skills-container{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:1rem!important}.skill-category-card{background:transparent!important;border:1px solid #e5e7eb!important;padding:1rem!important;box-shadow:none!important}.skill-category-title{font-size:11pt!important;color:#111827!important}.skill-bar-bg{background:#e5e7eb!important}.skill-bar-fill{background:#374151!important;box-shadow:none!important}}
