.kevin-olsen-experience{padding:var(--spacing-3xl) var(--spacing-lg);background-color:var(--color-background);position:relative}.kevin-olsen-experience-container{max-width:1000px;margin:0 auto}.kevin-olsen-experience-header{margin-bottom:var(--spacing-3xl)}.kevin-olsen-experience-comment{display:block;color:var(--color-text-muted);font-family:var(--font-primary);font-size:var(--text-sm);font-style:italic;margin-bottom:var(--spacing-sm)}.kevin-olsen-experience-title{font-family:var(--font-primary);font-size:var(--text-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.kevin-olsen-experience-bracket{color:var(--color-secondary)}.kevin-olsen-experience-class{color:var(--color-primary);text-shadow:0 0 10px rgba(0,217,255,.3)}.kevin-olsen-experience-extends{color:var(--color-accent)}.kevin-olsen-experience-parent{color:var(--color-warning)}.kevin-olsen-experience-timeline{position:relative}.kevin-olsen-experience-item{display:grid;grid-template-columns:40px 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.kevin-olsen-experience-item:last-child{margin-bottom:0}.kevin-olsen-experience-dot-container{display:flex;flex-direction:column;align-items:center;position:relative}.kevin-olsen-experience-dot{width:20px;height:20px;border-radius:50%;background-color:var(--color-surface);border:2px solid var(--color-primary);position:relative;z-index:2;box-shadow:0 0 10px rgba(0,217,255,.3)}.kevin-olsen-experience-dot-current{background-color:var(--color-primary);box-shadow:0 0 20px rgba(0,217,255,.6)}.kevin-olsen-experience-dot-pulse{position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:50%;border:2px solid var(--color-primary);animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.kevin-olsen-experience-line{width:2px;flex:1;background:linear-gradient(to bottom,var(--color-primary),var(--color-border));margin-top:var(--spacing-xs)}.kevin-olsen-experience-card{background-color:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-xl);box-shadow:var(--shadow);transition:all .3s ease}.kevin-olsen-experience-card:hover{border-color:var(--color-primary);box-shadow:0 0 30px rgba(0,217,255,.2);transform:translateX(8px)}.kevin-olsen-experience-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.kevin-olsen-experience-command{font-family:var(--font-primary);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.kevin-olsen-experience-prompt{color:var(--color-accent);margin-right:var(--spacing-xs)}.kevin-olsen-experience-cmd{color:var(--color-secondary)}.kevin-olsen-experience-position{font-family:var(--font-primary);font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:var(--spacing-xs) 0}.kevin-olsen-experience-company{font-family:var(--font-primary);font-size:var(--text-base);color:var(--color-text-secondary)}.kevin-olsen-experience-at{color:var(--color-primary);margin-right:var(--spacing-xs)}.kevin-olsen-experience-period{font-family:var(--font-primary);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--spacing-sm)}.kevin-olsen-experience-period-bracket{color:var(--color-secondary)}.kevin-olsen-experience-description{font-family:var(--font-primary);font-size:var(--text-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.kevin-olsen-experience-tech{background-color:rgba(0,0,0,.3);border:var(--border-width) var(--border-style) rgba(0,217,255,.2);border-radius:var(--border-radius);padding:var(--spacing-md);font-family:var(--font-primary)}.kevin-olsen-experience-tech-label{display:block;color:var(--color-secondary);font-size:var(--text-sm);margin-bottom:var(--spacing-xs)}.kevin-olsen-experience-tech-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding-left:var(--spacing-md);margin:var(--spacing-xs) 0}.kevin-olsen-experience-tech-item{color:var(--color-accent);font-size:var(--text-sm)}.kevin-olsen-experience-tech-semicolon{display:block;color:var(--color-secondary);font-size:var(--text-sm)}.kevin-olsen-experience-footer{margin-top:var(--spacing-2xl);padding-left:40px;font-family:var(--font-primary);font-size:var(--text-3xl);color:var(--color-secondary)}@media (max-width:768px){.kevin-olsen-experience{padding:var(--spacing-2xl) var(--spacing-md)}.kevin-olsen-experience-title{font-size:var(--text-2xl)}.kevin-olsen-experience-item{grid-template-columns:30px 1fr;gap:var(--spacing-md)}.kevin-olsen-experience-dot{width:16px;height:16px}.kevin-olsen-experience-card{padding:var(--spacing-lg)}.kevin-olsen-experience-card:hover{transform:translateX(4px)}.kevin-olsen-experience-card-header{flex-direction:column;gap:var(--spacing-sm)}.kevin-olsen-experience-position{font-size:var(--text-lg)}.kevin-olsen-experience-footer{padding-left:30px}}.kevin-olsen-experience-editable-comment,.kevin-olsen-experience-editable-company,.kevin-olsen-experience-editable-period,.kevin-olsen-experience-editable-position,.kevin-olsen-experience-editable-title{background:transparent;border:1px solid transparent;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;outline:none;padding:var(--spacing-xs);border-radius:var(--border-radius);transition:all .2s ease;min-width:0;line-height:1.5;vertical-align:top;display:inline-block}.kevin-olsen-experience-editable-comment:hover,.kevin-olsen-experience-editable-company:hover,.kevin-olsen-experience-editable-period:hover,.kevin-olsen-experience-editable-position:hover,.kevin-olsen-experience-editable-title:hover{border-color:var(--color-primary);background:rgba(0,217,255,.05)}.kevin-olsen-experience-editable-comment:focus,.kevin-olsen-experience-editable-company:focus,.kevin-olsen-experience-editable-period:focus,.kevin-olsen-experience-editable-position:focus,.kevin-olsen-experience-editable-title:focus{border-color:var(--color-primary);background:rgba(0,217,255,.1);box-shadow:0 0 0 2px rgba(0,217,255,.2)}.kevin-olsen-experience-rich-text-editor{background:transparent!important;border:1px solid transparent!important;border-radius:var(--border-radius)!important;color:var(--color-text-primary)!important;font-family:var(--font-primary)!important;font-size:var(--text-base)!important;line-height:var(--line-height-relaxed)!important;min-height:80px!important;transition:all .2s ease!important}.kevin-olsen-experience-rich-text-editor:hover{border-color:var(--color-primary)!important;background:rgba(0,217,255,.05)!important}.kevin-olsen-experience-rich-text-editor:focus-within{border-color:var(--color-primary)!important;background:rgba(0,217,255,.1)!important;box-shadow:0 0 0 2px rgba(0,217,255,.2)!important}.kevin-olsen-experience-rich-text-editor .ProseMirror{background:transparent!important;color:var(--color-text-primary)!important;font-family:var(--font-primary)!important;font-size:var(--text-base)!important;line-height:var(--line-height-relaxed)!important;padding:var(--spacing-sm)!important;outline:none!important}.kevin-olsen-experience-rich-text-editor .ProseMirror p{margin-bottom:var(--spacing-md)!important;color:var(--color-text-primary)!important}.kevin-olsen-experience-rich-text-editor .ProseMirror strong{color:var(--color-primary)!important;font-weight:var(--font-weight-bold)!important}.kevin-olsen-experience-rich-text-editor .ProseMirror em{color:var(--color-secondary)!important;font-style:italic!important}.kevin-olsen-experience-rich-text-editor .rich-text-toolbar{background:var(--color-surface)!important;border-bottom:1px solid var(--color-border)!important;padding:var(--spacing-xs)!important}.kevin-olsen-experience-rich-text-editor .rich-text-toolbar button{background:transparent!important;border:1px solid transparent!important;color:var(--color-text-secondary)!important;padding:var(--spacing-xs) var(--spacing-sm)!important;border-radius:var(--border-radius)!important;transition:all .2s ease!important}.kevin-olsen-experience-rich-text-editor .rich-text-toolbar button:hover{background:var(--color-primary)!important;color:var(--color-background)!important;border-color:var(--color-primary)!important}.kevin-olsen-experience-rich-text-editor .rich-text-toolbar button.active{background:var(--color-secondary)!important;color:var(--color-background)!important;border-color:var(--color-secondary)!important}.kevin-olsen-experience-add-btn,.kevin-olsen-experience-remove-btn{background:var(--color-primary);color:var(--color-background);border:none;border-radius:var(--border-radius);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-sm);font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:var(--spacing-xs);white-space:nowrap}.kevin-olsen-experience-remove-btn{background:var(--color-error)}.kevin-olsen-experience-add-btn:hover,.kevin-olsen-experience-remove-btn:hover{background:var(--color-secondary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,217,255,.3)}.kevin-olsen-experience-remove-btn{position:absolute;top:-8px;right:-8px;z-index:2;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;font-size:var(--text-xs);opacity:.8;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.2)}.kevin-olsen-experience-remove-btn:hover{opacity:1;transform:translateY(-1px) scale(1.1);box-shadow:0 4px 8px rgba(0,0,0,.3)}.kevin-olsen-experience-item{position:relative}.kevin-olsen-experience-add-item{display:flex;justify-content:center;padding:var(--spacing-xl) 0}.kevin-olsen-experience-add-btn{background:transparent;border:2px dashed var(--color-border);color:var(--color-text-secondary);padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--text-base)}.kevin-olsen-experience-add-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:rgba(0,217,255,.05)}.kevin-olsen-experience-tech{position:relative}.kevin-olsen-experience-tech-edit-btn{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-xs);color:var(--color-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:10}.kevin-olsen-experience-tech-edit-btn:hover{background:var(--color-primary);color:var(--color-background);transform:scale(1.05)}.kevin-olsen-tech-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.kevin-olsen-tech-modal{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-lg,12px);width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,217,255,.2);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.kevin-olsen-tech-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.kevin-olsen-tech-modal-title{font-family:var(--font-mono,"Fira Code",monospace);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-primary);margin:0}.kevin-olsen-tech-modal-close{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.kevin-olsen-tech-modal-close:hover{background:var(--color-surface);color:var(--color-primary);border-color:var(--color-primary)}.kevin-olsen-tech-modal-content{padding:var(--spacing-lg);overflow-y:auto;flex:1}.kevin-olsen-tech-modal-empty{text-align:center;color:var(--color-text-secondary);font-family:var(--font-mono,"Fira Code",monospace);font-size:var(--text-sm);padding:var(--spacing-xl) 0}.kevin-olsen-tech-modal-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.kevin-olsen-tech-modal-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:all .2s ease;align-items:center}.kevin-olsen-tech-modal-item:hover{border-color:var(--color-primary);box-shadow:0 4px 12px rgba(0,217,255,.1)}.kevin-olsen-tech-modal-input-wrapper{flex:1;display:flex;align-items:center;gap:var(--spacing-xs)}.kevin-olsen-tech-modal-quote{font-family:var(--font-mono,"Fira Code",monospace);color:var(--color-accent);font-size:var(--text-base);font-weight:var(--font-bold)}.kevin-olsen-tech-modal-input{flex:1;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm);color:var(--color-text-primary);font-family:var(--font-mono,"Fira Code",monospace);font-size:var(--text-sm);transition:all .2s ease}.kevin-olsen-tech-modal-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(0,217,255,.1)}.kevin-olsen-tech-modal-input::placeholder{color:var(--color-text-muted)}.kevin-olsen-tech-modal-delete{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.kevin-olsen-tech-modal-delete:hover{background:rgba(239,68,68,.1);border-color:#ef4444;color:#ef4444}.kevin-olsen-tech-modal-add{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md);color:var(--color-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:var(--font-mono,"Fira Code",monospace);font-size:var(--text-sm);transition:all .2s ease;margin-top:var(--spacing-md)}.kevin-olsen-tech-modal-add:hover{background:var(--color-primary);color:var(--color-background);border-style:solid;border-color:var(--color-primary)}.kevin-olsen-tech-modal-footer{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-border);justify-content:flex-end}.kevin-olsen-tech-modal-btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius);font-family:var(--font-mono,"Fira Code",monospace);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border)}.kevin-olsen-tech-modal-btn-cancel{background:transparent;color:var(--color-text-secondary)}.kevin-olsen-tech-modal-btn-cancel:hover{background:var(--color-surface);border-color:var(--color-text-secondary)}.kevin-olsen-tech-modal-btn-save{background:var(--color-primary);color:var(--color-background);border-color:var(--color-primary)}.kevin-olsen-tech-modal-btn-save:hover{background:transparent;color:var(--color-primary);box-shadow:0 4px 12px rgba(0,217,255,.2)}@media (max-width:768px){.kevin-olsen-tech-modal{max-width:95%;max-height:90vh}.kevin-olsen-tech-modal-footer{flex-direction:column-reverse}.kevin-olsen-tech-modal-btn{width:100%}}