:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}img{max-width:100%;display:block}#root{min-height:100vh}a{color:inherit}h1,h2,h3,p{margin-top:0}:root{--bg-primary:#0b0f19;--bg-secondary:#111827;--bg-tertiary:#1f2937;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-color:#8b5cf6;--accent-color-hover:#a78bfa;--accent-cyan:#06b6d4;--accent-emerald:#10b981;--border-color:#ffffff14;--glass-bg:#111825b3;--glass-border:#ffffff0f;--font-family:"Inter", system-ui, -apple-system, sans-serif;--shadow-sm:0 2px 8px #0003;--shadow-md:0 10px 30px #0006;--shadow-glow:0 0 25px #8b5cf640;--shadow-cyan-glow:0 0 25px #06b6d440}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);background-image:radial-gradient(circle at 100% 0,#8b5cf60d,#0000 45%),radial-gradient(circle at 0 100%,#06b6d408,#0000 40%);min-height:100vh;margin:0}.loading-screen,.error-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:80vh;padding:24px;display:flex}.loading-spinner{border:3px solid #ffffff0d;border-top-color:var(--accent-color);width:50px;height:50px;box-shadow:var(--shadow-glow);border-radius:50%;animation:1s cubic-bezier(.5,.1,.4,.9) infinite spin}.loading-text{letter-spacing:.05em;color:var(--text-secondary);font-weight:500}.error-shield{color:var(--text-secondary);justify-content:center;align-items:center;margin-bottom:8px;font-size:3rem;display:flex}.error-shield svg{color:#ef4444}.error-screen h2{color:#ef4444;margin:0;font-size:1.8rem}.error-retry-btn{margin-top:16px}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{flex-direction:column;min-height:100vh;display:flex}.main-content-layout{flex:1;width:min(1200px,100% - 40px);margin:0 auto;padding:110px 0 60px}.fade-in-container{animation:.4s ease-out forwards pageFadeIn}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.navbar-container{z-index:1000;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);width:100%;position:fixed;top:0;left:0}.navbar-content{justify-content:space-between;align-items:center;gap:20px;width:min(1200px,100% - 40px);height:76px;margin:0 auto;display:flex}.nav-brand{color:var(--text-primary);letter-spacing:.05em;align-items:center;font-size:1.3rem;font-weight:800;text-decoration:none;transition:opacity .2s;display:flex}.nav-brand:hover{opacity:.9}.brand-accent{color:var(--accent-color);font-weight:900}.nav-links{align-items:center;gap:6px;display:flex}.nav-link-item{color:var(--text-secondary);border-radius:8px;padding:8px 16px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative}.nav-link-item:hover{color:var(--text-primary);background:#ffffff08}.nav-link-item.active{color:var(--accent-color);background:#8b5cf614;font-weight:600}.navbar-actions{align-items:center;display:flex}.admin-trigger{color:var(--text-secondary);opacity:.5;border-radius:8px;place-items:center;padding:6px;font-size:1.25rem;text-decoration:none;transition:all .2s;display:grid}.admin-trigger:hover{opacity:1;color:var(--accent-color);background:#ffffff0a;transform:rotate(30deg)}.footer-container{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:32px 0}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:min(1200px,100% - 40px);margin:0 auto;display:flex}.footer-content p{color:var(--text-muted);margin:0;font-size:.9rem}.footer-admin-link{color:var(--text-muted);font-size:.85rem;text-decoration:none;transition:color .2s}.footer-admin-link:hover{color:var(--accent-color)}.btn-modern{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 24px;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-modern.primary-btn{background:var(--accent-color);color:#fff;box-shadow:var(--shadow-glow)}.btn-modern.primary-btn:hover{background:var(--accent-color-hover);transform:translateY(-2px);box-shadow:0 0 35px #8b5cf666}.btn-modern.secondary-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-modern.secondary-btn:hover{background:var(--bg-tertiary);border-color:#ffffff26;transform:translateY(-2px)}.btn-arrow{transition:transform .2s}.primary-btn:hover .btn-arrow{transform:translate(4px)}.section-intro{max-width:760px;margin-bottom:48px}.eyebrow-accent{text-transform:uppercase;letter-spacing:.15em;color:var(--accent-color);background:#8b5cf614;border:1px solid #8b5cf626;border-radius:6px;margin-bottom:12px;padding:6px 12px;font-size:.75rem;font-weight:700;display:inline-block}.page-title{letter-spacing:-.04em;margin:0 0 16px;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:800;line-height:1.15}.page-desc{color:var(--text-secondary);margin:0;font-size:1.05rem;line-height:1.7}.homepage-container{flex-direction:column;gap:60px;display:flex}.hero-section{grid-template-columns:1.25fr .95fr;align-items:center;gap:50px;padding:20px 0 40px;display:grid}.badge-glow-container{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.eyebrow-badge{text-transform:uppercase;letter-spacing:.12em;color:var(--accent-cyan);background:#06b6d414;border:1px solid #06b6d426;border-radius:6px;padding:6px 12px;font-size:.72rem;font-weight:700}.status-indicator{color:var(--accent-emerald);background:#10b9810f;border:1px solid #10b9811f;border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.pulse-dot{background-color:var(--accent-emerald);width:8px;height:8px;box-shadow:0 0 10px var(--accent-emerald);border-radius:50%;animation:2s infinite pulseCore}@keyframes pulseCore{0%{opacity:.8;transform:scale(.9)}50%{opacity:1;box-shadow:0 0 14px var(--accent-emerald);transform:scale(1.15)}to{opacity:.8;transform:scale(.9)}}.hero-headline{letter-spacing:-.05em;margin:0 0 20px;font-size:clamp(2.4rem,5.5vw,4rem);font-weight:800;line-height:1.05}.hero-bio-lead{color:var(--text-secondary);max-width:600px;margin:0 0 32px;font-size:1.1rem;line-height:1.75}.hero-buttons{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.hero-visual-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-md);border-radius:16px;overflow:hidden}.terminal-header{border-bottom:1px solid var(--border-color);background:#00000040;align-items:center;gap:6px;padding:14px 18px;display:flex}.terminal-dot{border-radius:50%;width:10px;height:10px}.terminal-dot.red{background:#ef4444}.terminal-dot.yellow{background:#f59e0b}.terminal-dot.green{background:#10b981}.terminal-title{color:var(--text-muted);margin-left:10px;font-family:monospace;font-size:.78rem}.terminal-body{padding:24px}.terminal-profile-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.terminal-avatar{background:linear-gradient(135deg, var(--accent-color), var(--accent-cyan));color:#fff;width:50px;height:50px;box-shadow:var(--shadow-glow);border-radius:12px;justify-content:center;align-items:center;font-size:1.15rem;font-weight:700;display:flex}.terminal-username{margin:0 0 4px;font-size:1.1rem;font-weight:700}.terminal-role{color:var(--text-secondary);font-size:.8rem}.terminal-code-block{font-family:Fira Code,Consolas,monospace;font-size:.85rem;line-height:1.6}.code-line{color:var(--text-muted);margin:0}.indent{padding-left:20px}.code-key{color:var(--accent-cyan)}.code-value{color:var(--accent-color-hover)}.stats-dashboard{padding:20px 0}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.dashboard-stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;border-radius:16px;padding:32px 24px;transition:transform .25s,border-color .25s;position:relative;overflow:hidden}.dashboard-stat-card:hover{border-color:#8b5cf633;transform:translateY(-4px)}.stat-glow-effect{pointer-events:none;background:radial-gradient(circle,#8b5cf608 0%,#0000 60%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.stat-metric{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;display:block}.stat-label{color:var(--text-secondary);font-size:.95rem}.projects-page-container{flex-direction:column;display:flex}.filter-tabs-container{align-items:center;gap:8px;margin-bottom:36px;padding-bottom:8px;display:flex;overflow-x:auto}.filter-btn-tab{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s}.filter-btn-tab:hover{color:var(--text-primary);background:#ffffff05;border-color:#ffffff26}.filter-btn-tab.active{color:var(--accent-color-hover);border-color:var(--accent-color);background:#8b5cf614;font-weight:600}.projects-modern-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.modern-project-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),border-color .3s;display:flex;overflow:hidden}.modern-project-card:hover{box-shadow:var(--shadow-md);border-color:#8b5cf640;transform:translateY(-6px)}.card-media-placeholder{background:linear-gradient(135deg,#8b5cf61a,#06b6d41a);height:140px;position:relative}.project-category-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-cyan);background:#06b6d41f;border:1px solid #06b6d433;border-radius:4px;padding:4px 10px;font-size:.72rem;font-weight:700;position:absolute;bottom:16px;left:20px}.project-card-details{flex-direction:column;flex:1;padding:24px;display:flex}.project-card-title{color:var(--text-primary);margin:0 0 10px;font-size:1.25rem;font-weight:750}.project-card-description{color:var(--text-secondary);flex:1;margin:0 0 20px;font-size:.95rem;line-height:1.6}.project-action-link,.project-action-link-disabled{align-self:flex-start;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s}.project-action-link{color:var(--accent-color)}.project-action-link:hover{color:var(--accent-color-hover)}.project-action-link .arrow-icon{transition:transform .2s;display:inline-block}.project-action-link:hover .arrow-icon{transform:translate(2px,-2px)}.project-action-link-disabled{color:var(--text-muted);cursor:default}.empty-projects-state{text-align:center;background:var(--bg-secondary);border:1px dashed var(--border-color);color:var(--text-secondary);border-radius:16px;grid-column:span 2;padding:60px 24px}.skills-page-container{flex-direction:column;display:flex}.skills-categorized-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.skills-category-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:32px 28px;transition:border-color .25s}.skills-category-card.border-emerald{border-left:4px solid var(--accent-emerald)}.skills-category-card.border-violet{border-left:4px solid var(--accent-color)}.skills-category-card.border-blue{border-left:4px solid #3b82f6}.skills-category-card.border-cyan{border-left:4px solid var(--accent-cyan)}.skills-cat-header{align-items:center;gap:12px;margin-bottom:24px;display:flex}.skills-cat-icon{font-size:1.5rem}.skills-cat-title{margin:0;font-size:1.25rem;font-weight:750}.skills-cat-body{flex-wrap:wrap;gap:10px;display:flex}.skill-interactive-pill{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.skill-interactive-pill:hover{background:#ffffff05;border-color:#ffffff26;transform:translateY(-1px)}.skill-pill-bullet{background-color:var(--accent-color);border-radius:50%;width:6px;height:6px}.border-emerald .skill-pill-bullet{background-color:var(--accent-emerald)}.border-blue .skill-pill-bullet{background-color:#3b82f6}.border-cyan .skill-pill-bullet{background-color:var(--accent-cyan)}.experience-page-container{flex-direction:column;display:flex}.timeline-modern-wrapper{max-width:800px;margin:0 auto;padding:20px 0;position:relative}.timeline-center-line{background:var(--border-color);width:2px;position:absolute;top:0;bottom:0;left:20px}.timeline-modern-item{margin-bottom:40px;padding-left:54px;position:relative}.timeline-modern-item:last-child{margin-bottom:0}.timeline-badge-node{background-color:var(--bg-primary);border:2px solid var(--accent-color);z-index:10;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:6px;left:11px}.badge-pulsing-core{background-color:var(--accent-color);border-radius:50%;width:8px;height:8px;animation:2.5s infinite nodePulse}@keyframes nodePulse{0%{opacity:.6;transform:scale(.95)}50%{opacity:1;box-shadow:0 0 8px var(--accent-color);transform:scale(1.1)}to{opacity:.6;transform:scale(.95)}}.timeline-content-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:28px;transition:border-color .25s,transform .25s}.timeline-content-card:hover{border-color:#8b5cf633;transform:translate(2px)}.timeline-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.timeline-job-title{color:var(--text-primary);margin:0 0 4px;font-size:1.25rem;font-weight:750}.timeline-company-name{color:var(--accent-color);font-size:.95rem;font-weight:600}.timeline-job-period{color:var(--text-muted);border:1px solid var(--border-color);background:#ffffff08;border-radius:6px;padding:6px 12px;font-size:.85rem;font-weight:600}.timeline-bullets-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.timeline-bullet-item{align-items:flex-start;gap:10px;display:flex}.bullet-connector{background-color:var(--text-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:8px}.bullet-text{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.6}.education-page-container{flex-direction:column;display:flex}.education-modern-list{flex-direction:column;gap:24px;width:100%;max-width:900px;margin:0 auto;display:flex}.modern-education-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:32px;transition:transform .25s,border-color .25s;position:relative;overflow:hidden}.modern-education-card:hover{border-color:#06b6d433;transform:translateY(-2px)}.edu-card-glow{pointer-events:none;background:radial-gradient(circle,#06b6d40d 0%,#0000 70%);width:120px;height:120px;position:absolute;top:-60px;right:-60px}.edu-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.edu-institution-info{align-items:flex-start;gap:16px;display:flex}.edu-icon-shield{background:#06b6d414;border:1px solid #06b6d426;border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;padding:8px;display:grid}.edu-icon-shield svg{width:24px;height:24px;color:var(--accent-cyan)}.edu-institution-name{color:var(--text-primary);margin:0 0 4px;font-size:1.25rem;font-weight:750}.edu-degree-title{color:var(--accent-cyan);margin:0;font-size:.95rem;font-weight:600}.edu-location-badge{color:var(--text-muted);border:1px solid var(--border-color);background:#ffffff08;border-radius:6px;padding:6px 12px;font-size:.85rem;font-weight:600}.coursework-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 12px;font-size:.85rem;font-weight:700}.coursework-tags-grid{flex-wrap:wrap;gap:8px;display:flex}.course-item-tag{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:8px;padding:6px 14px;font-size:.85rem;font-weight:500}.contact-page-container{flex-direction:column;display:flex}.contact-interactive-layout{grid-template-columns:.9fr 1.1fr;align-items:start;gap:40px;display:grid}.panel-subtitle{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 16px;font-size:.82rem;font-weight:700}.panel-subtitle.label-margin{margin-top:36px}.direct-channels-list{flex-direction:column;gap:16px;display:flex}.channel-interactive-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:20px;transition:border-color .2s;display:flex}.channel-interactive-card:hover{border-color:#ffffff26}.channel-info{align-items:center;gap:14px;display:flex}.channel-icon{border:1px solid var(--border-color);background:#ffffff08;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.channel-icon svg{width:20px;height:20px;color:var(--accent-color)}.channel-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:2px;font-size:.75rem;font-weight:600;display:block}.channel-value-link{color:var(--text-primary);font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s}.channel-value-link:hover{color:var(--accent-color)}.btn-copy-clipboard{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:all .2s}.btn-copy-clipboard:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:#ffffff26}.btn-copy-clipboard.success{border-color:var(--accent-emerald);color:var(--accent-emerald);background:#10b98114}.profile-action-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-link-tile{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:16px;flex-direction:column;align-items:flex-start;padding:24px 20px;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.profile-link-tile:hover{box-shadow:var(--shadow-glow);transform:translateY(-4px)}.profile-link-tile.github-tile:hover{box-shadow:var(--shadow-cyan-glow)}.tile-icon{background:#8b5cf626;border:1px solid #8b5cf633;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 12px;display:flex}.tile-icon svg{width:24px;height:24px;color:var(--accent-color)}.tile-title{margin-bottom:2px;font-size:1.1rem;font-weight:700}.tile-sub{color:var(--text-muted);font-size:.8rem}.contact-form-panel{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:20px;padding:32px}.modern-contact-form{flex-direction:column;gap:20px;display:flex}.form-group-modern{flex-direction:column;gap:8px;display:flex}.form-group-modern label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.78rem;font-weight:600}.form-group-modern input,.form-group-modern textarea{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);resize:vertical;border-radius:10px;padding:12px 16px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group-modern input:focus,.form-group-modern textarea:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #8b5cf626}.form-submit-notification{border-radius:10px;padding:12px 16px;font-size:.9rem;font-weight:500}.form-submit-notification.success{border:1px solid var(--accent-emerald);color:var(--accent-emerald);background:#10b98114}.form-submit-btn{width:100%}@media (width<=900px){.hero-section{text-align:center;grid-template-columns:1fr;gap:40px}.badge-glow-container{justify-content:center}.hero-bio-lead{margin:0 auto 32px}.hero-buttons{justify-content:center}.stats-grid,.projects-modern-grid,.skills-categorized-grid{grid-template-columns:1fr}.contact-interactive-layout{grid-template-columns:1fr;gap:48px}}@media (width<=760px){.navbar-content{flex-direction:column;gap:16px;height:auto;padding:16px 0}.main-content-layout{padding-top:180px}.footer-content{text-align:center;flex-direction:column;gap:12px}}.admin-shell{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);font-family:var(--font-family);flex-direction:column;display:flex}.admin-topbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:16px;display:flex}.admin-logo-link{color:var(--text-muted);font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s}.admin-logo-link:hover{color:var(--accent-color)}.admin-title{color:var(--text-primary);border-left:1px solid var(--border-color);padding-left:16px;font-size:1rem;font-weight:700}.btn-logout{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:8px 18px;font-size:.85rem;font-weight:500;transition:all .2s}.btn-logout:hover{color:#ef4444;background:#ef44440f;border-color:#ef4444}.admin-layout{flex:1;min-height:calc(100vh - 64px);display:flex}.admin-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:240px;height:calc(100vh - 64px);padding:24px 0 0;display:flex;position:sticky;top:64px;overflow-y:auto}.sidebar-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding:0 20px 12px;font-size:.7rem;font-weight:700}.admin-sidebar nav{flex-direction:column;gap:2px;padding:0 12px;display:flex}.sidebar-tab{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:11px 14px;font-size:.88rem;font-weight:500;transition:all .18s;display:flex}.sidebar-tab svg{color:currentColor;flex-shrink:0}.sidebar-tab:hover{color:var(--text-primary);background:#ffffff0a}.sidebar-tab.active{color:var(--accent-color-hover);border-left:3px solid var(--accent-color);background:#8b5cf61a;padding-left:11px;font-weight:700}.sidebar-tab.active svg{color:var(--accent-color)}.sidebar-footer{border-top:1px solid var(--border-color);margin-top:auto;padding:20px 16px}.save-bar{flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.save-bar-actions{justify-content:center;gap:8px;width:100%;display:flex}.save-success{color:var(--accent-emerald);font-size:.82rem;font-weight:600}.save-error{color:#f87171;font-size:.82rem;font-weight:500}.security-editor{max-width:560px}.security-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-md);border-radius:16px;padding:24px}.security-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:12px;display:flex}.security-header h3{margin:0;font-size:1.15rem;font-weight:700}.security-header span{color:var(--text-secondary);word-break:break-word;font-size:.8rem}.security-form{flex-direction:column;gap:16px;display:flex}.admin-content{flex:1;padding:32px 40px;overflow-y:auto}.admin-section-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:20px;display:flex}.admin-section-header>div{align-items:center;gap:12px;display:flex}.admin-section-header>div svg{color:var(--accent-color);flex-shrink:0}.admin-section-header h2{margin:0;font-size:1.4rem;font-weight:700}.preview-link{color:var(--accent-color);font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s}.preview-link:hover{color:var(--accent-color-hover)}.editor-section{flex-direction:column;gap:20px;max-width:720px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.78rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);resize:vertical;border-radius:10px;width:100%;padding:11px 14px;font-family:inherit;font-size:.93rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #8b5cf626}.form-group-inline{flex-direction:row;align-items:center;gap:10px}.form-group-inline label{text-transform:none;letter-spacing:0;cursor:pointer;color:var(--text-primary);align-items:center;gap:8px;font-size:.9rem;display:flex}.form-group-row{flex-direction:row;align-items:center}.form-group-row input{flex:1}.input-with-action{width:100%;position:relative}.input-with-action input{width:100%;padding-right:46px}.input-action-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:linear-gradient(135deg,#8b5cf62e,#06b6d42e);border:1px solid #8b5cf659;border-radius:8px;justify-content:center;align-items:center;font-size:1.05rem;font-weight:700;transition:all .2s;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%);box-shadow:0 0 0 1px #8b5cf614}.input-action-btn:hover{background:linear-gradient(135deg,#8b5cf647,#06b6d438);border-color:#8b5cf699;transform:translateY(-50%)scale(1.02)}.admin-select{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:10px;width:100%;padding:11px 14px;font-size:.93rem}.admin-select:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #8b5cf626}.card-editor{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:16px;padding:20px;transition:border-color .2s;display:flex}.card-editor:hover{border-color:#8b5cf640}.card-editor-header{justify-content:space-between;align-items:center;display:flex}.card-editor-header strong{color:var(--text-primary);font-size:.95rem}.card-editor-actions{gap:6px;display:flex}.btn-add{color:var(--accent-color);cursor:pointer;background:#8b5cf614;border:1px dashed #8b5cf659;border-radius:10px;width:100%;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .2s}.btn-add:hover{border-color:var(--accent-color);background:#8b5cf624}.btn-add-inline{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;padding:10px 18px;font-size:.88rem;font-weight:600;transition:background .2s}.btn-add-inline:hover{background:var(--accent-color-hover)}.btn-remove{color:#f87171;cursor:pointer;background:0 0;border:1px solid #ef444440;border-radius:7px;padding:5px 10px;font-size:.8rem;transition:all .2s}.btn-remove:hover{background:#ef44441a;border-color:#f87171}.btn-ghost{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:9px 16px;font-size:.87rem;font-weight:500;transition:all .2s}.btn-ghost:hover{color:var(--text-primary);border-color:#ffffff26}.btn-ghost-sm{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:4px 8px;font-size:.78rem;transition:all .2s}.btn-ghost-sm:hover{color:var(--text-primary);border-color:#ffffff26}.button.primary.btn-save{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:background .2s}.button.primary.btn-save:hover{background:var(--accent-color-hover)}.button.primary.btn-save:disabled{opacity:.5;cursor:not-allowed}.skills-list-edit{flex-wrap:wrap;gap:8px;display:flex}.skill-tag-edit{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.82rem;display:inline-flex}.skill-tag-edit button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;line-height:1;transition:color .15s}.skill-tag-edit button:hover{color:#f87171}.list-item-row{align-items:center;gap:10px;display:flex}.list-item-row input{flex:1}.admin-login-page{background:var(--bg-primary);background-image:radial-gradient(circle at 100% 0,#8b5cf614,#0000 42%),radial-gradient(circle at 0 100%,#06b6d40d,#0000 36%);justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.admin-login-card{border:1px solid var(--border-color);width:100%;max-width:420px;box-shadow:var(--shadow-md), var(--shadow-glow);-webkit-backdrop-filter:blur(16px);background:#111827d9;border-radius:20px;padding:32px 28px 28px}.login-back-link{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:20px;font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.login-back-link:hover{color:var(--accent-color-hover)}.login-header-block{flex-direction:column;align-items:flex-start;margin-bottom:24px;display:flex}.login-icon-badge{width:52px;height:52px;box-shadow:var(--shadow-glow);background:linear-gradient(135deg,#8b5cf633,#06b6d426);border:1px solid #8b5cf633;border-radius:14px;place-items:center;margin-bottom:12px;font-size:1.4rem;display:grid}.admin-login-card h1{letter-spacing:-.04em;color:var(--text-primary);margin:0;font-size:1.7rem;font-weight:800}.admin-login-card p{color:var(--text-secondary);margin:8px 0 0;font-size:.92rem;line-height:1.6}.login-form{flex-direction:column;gap:18px;display:flex}.messages-viewer{max-width:900px}.messages-list{flex-direction:column;gap:16px;display:flex}.message-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .2s;overflow:hidden}.message-card:hover{border-color:#8b5cf659;box-shadow:0 0 20px #8b5cf61a}.message-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;padding-bottom:12px;display:flex}.message-header>div{flex-direction:column;gap:4px;display:flex}.message-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.message-email{color:var(--text-secondary);font-size:.78rem}.message-date{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.75rem}.message-body{color:var(--text-secondary);font-size:.92rem;line-height:1.6}.message-body p{word-break:break-word;white-space:pre-wrap;margin:0}.muted{color:var(--text-muted)}.password-input-group{position:relative}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-input-wrapper input{width:100%;padding-right:44px}.password-toggle-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.password-toggle-btn svg{stroke-width:2px;width:18px;height:18px}.password-toggle-btn:hover{color:var(--accent-color);background:#8b5cf61a}.password-toggle-btn:active{transform:translateY(-50%)scale(.95)}.login-form .form-group{gap:10px}.login-form label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:.76rem;font-weight:700;display:block}.login-form input{border:1px solid var(--border-color);color:var(--text-primary);background:#0f172ae6;border-radius:12px;width:100%;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.login-form input:focus{border-color:#8b5cf6b3;outline:none;box-shadow:0 0 0 3px #8b5cf624}.login-error{color:#fca5a5;background:#ef444414;border:1px solid #ef444433;border-radius:10px;padding:10px 12px;font-size:.84rem}.login-submit-btn{background:linear-gradient(135deg, var(--accent-color), var(--accent-color-hover));color:#fff;cursor:pointer;width:100%;box-shadow:var(--shadow-glow);border:none;border-radius:12px;margin-top:6px;padding:13px 18px;font-size:.95rem;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s}.login-submit-btn:hover{transform:translateY(-1px);box-shadow:0 0 28px #8b5cf657}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}@media (width<=860px){.admin-layout{flex-direction:column}.admin-sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;padding:16px 16px 0;position:static}.admin-sidebar nav{flex-flow:wrap;padding:0}.sidebar-tab{border-radius:8px;width:auto;padding:8px 14px;border-left:none!important}.sidebar-tab.active{border-bottom:2px solid var(--accent-color);border-radius:8px 8px 0 0;border-left:none!important}.sidebar-footer{width:100%;margin-top:12px;padding:14px 0 16px}.admin-content{padding:24px 20px}}.terminal-avatar-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.project-card-img{object-fit:cover;border-radius:inherit;opacity:.82;width:100%;height:100%;transition:opacity .3s;position:absolute;inset:0}.modern-project-card:hover .project-card-img{opacity:1}.timeline-company-logo{object-fit:contain;background:#ffffff0d;border-radius:6px;max-width:110px;height:34px;margin-bottom:6px;padding:4px 8px;display:block}.image-uploader-wrap{flex-direction:column;gap:10px;margin-bottom:4px;display:flex}.uploader-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.78rem;font-weight:600}.uploader-preview{border:2px dashed var(--border-color);background:var(--bg-primary);border-radius:12px;justify-content:center;align-items:center;transition:border-color .2s;display:flex;overflow:hidden}.uploader-preview:hover{border-color:#8b5cf666}.uploader-preview.circle{border-radius:50%;width:96px;height:96px}.uploader-preview.rect{width:100%;height:140px}.uploader-preview-img{object-fit:cover;width:100%;height:100%;display:block}.uploader-placeholder{color:var(--text-muted);opacity:.6;flex-direction:column;align-items:center;gap:6px;display:flex}.uploader-placeholder-icon{font-size:1.8rem}.uploader-placeholder-text{font-size:.76rem}.uploader-actions{align-items:center;gap:8px;display:flex}.uploader-error{color:#f87171;background:#ef44440f;border:1px solid #ef444433;border-radius:8px;padding:8px 12px;font-size:.8rem}
