*{margin:0;padding:0;box-sizing:border-box}body{background:#0a0a0a;color:#e0e0e0;font-family:JetBrains Mono,monospace;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:960px;margin:0 auto;padding:48px 24px}.header{display:flex;justify-content:center;padding-bottom:24px;border-bottom:1px solid #1a1a1a;margin-bottom:28px}.header-info{display:flex;flex-direction:column;align-items:center;text-align:center}.header-role{font-size:13px;color:#9a9a9a;line-height:1.4}.header-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:8px}.header-links a{font-size:12px;color:#555;text-decoration:none;transition:color .15s}.header-links a:hover{color:#aaa}.name-section{margin:0 0 18px;cursor:default}.name-section canvas{display:block;width:100%}.canvas-section{margin:0 0 8px;position:relative}.canvas-section canvas{display:block;width:100%;cursor:default}.canvas-hint{font-size:11px;color:#333;margin-top:6px;text-transform:uppercase;letter-spacing:.08em;-webkit-user-select:none;user-select:none}.section-label{font-size:11px;color:#555;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;margin-top:36px}.stacked-list{border-top:1px solid #1a1a1a}.stacked-item{padding:14px 0;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}.stacked-item--bordered{border-bottom:1px solid #1a1a1a}.stacked-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#3b82f6,#a855f7);opacity:0;transition:opacity .25s ease}.stacked-item:hover:before,.stacked-item--expanded:before{opacity:1}.stacked-item:hover,.stacked-item--expanded{padding-left:14px;transition:padding-left .25s ease}.stacked-item:not(:hover):not(.stacked-item--expanded){transition:padding-left .25s ease}.stacked-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.stacked-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stacked-title{font-weight:700;color:#fff;font-size:15px}.stacked-title a{color:inherit;text-decoration:none;pointer-events:none}.stacked-item--expanded .stacked-title a,.stacked-item:hover .stacked-title a{pointer-events:auto}.stacked-role{color:#888;font-size:13px}.stacked-meta{color:#555;font-size:12px;white-space:nowrap}.stacked-chevron{color:#3a3a3a;font-size:13px;transition:transform .25s ease,color .25s ease;flex-shrink:0;line-height:1;width:16px}.stacked-item:hover .stacked-chevron{color:#666}.stacked-item--expanded .stacked-chevron{transform:rotate(90deg);color:#7c9ef7}.stacked-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease;overflow:hidden}.stacked-item--expanded .stacked-body{grid-template-rows:1fr}.stacked-body-inner{overflow:hidden;padding-top:0;transition:padding-top .28s ease}.stacked-item--expanded .stacked-body-inner{padding-top:10px}.stacked-desc{color:#777;font-size:13px;line-height:1.5}.stacked-positions{display:flex;flex-direction:column;gap:12px}.stacked-position{padding-left:14px;border-left:1px solid #222}.stacked-position-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}.stacked-position-role{color:#b8b8b8;font-size:13px}.stacked-position-date{color:#555;font-size:12px;white-space:nowrap}.stacked-position-desc{color:#777;font-size:13px;margin-top:4px;line-height:1.5}.stacked-skills{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.skill-tag{font-size:11px;color:#444;border:1px solid #1e1e1e;padding:2px 8px;border-radius:2px;transition:border-color .2s ease,color .2s ease}.stacked-item--expanded .skill-tag{border-color:#2a2a2a;color:#666}.footer{margin-top:40px;padding-top:16px;border-top:1px solid #1a1a1a;display:flex;justify-content:center}.footer-text{font-size:12px;color:#2e2e2e;cursor:default;-webkit-user-select:none;user-select:none;transition:color .4s ease;background:linear-gradient(90deg,#3b82f6,#a855f7);-webkit-background-clip:text;background-clip:text}.footer-text:hover{color:transparent}@media(max-width:600px){#app{padding:32px 16px}.stacked-top{flex-direction:column;gap:2px}.stacked-left{gap:6px;align-items:center}.stacked-position-top{flex-direction:column;gap:2px}.footer{margin-top:32px}}
