.publication-header{margin-bottom:2rem}.publication-meta{display:flex;gap:1rem;margin-bottom:.5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.publication-type{color:#7b16ff;font-weight:600}.publication-year{color:#666}.publication-info{margin-top:1rem}.publication-info .publisher{font-size:1.1rem;color:#4e5157;margin:0}.publication-venues{margin-top:1rem}.venue-item{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.venue-type-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:3px;background:#f0f0f0;color:#666;text-transform:uppercase;letter-spacing:.5px}.venue-type-badge.conference{background:#e8f4fd;color:#1a73e8}.venue-type-badge.vendor-research{background:#fef7e0;color:#b45309}.venue-type-badge.merged{background:linear-gradient(135deg,#e8f4fd,#fef7e0);color:#7b16ff;font-weight:600}.venue-publisher{font-size:1rem;color:#4e5157;font-weight:500}.venue-date{font-size:.85rem;color:#999}.pub-type-badge.merged{background:linear-gradient(135deg,#e8f4fd,#fef7e0);color:#7b16ff;font-weight:600}.pub-publishers{font-size:.9rem;color:#666}.publication-actions{display:flex;gap:1rem;flex-wrap:wrap;margin:2rem 0}.publication-actions .btn{display:inline-block;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;border-radius:4px;transition:all .2s ease}.publication-actions .btn-primary{background:#7b16ff;color:#fff}.publication-actions .btn-primary:hover{background:#6310d9}.publication-actions .btn-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.publication-actions .btn-secondary:hover{background:#eee}.coverage-section{margin-top:3rem;padding-top:2rem;border-top:1px solid #eee}.coverage-section h2{margin-bottom:1rem}.coverage-note{color:#666;font-size:.9rem;margin-bottom:1.5rem}.coverage-group{margin-bottom:2rem}.coverage-group h3{font-size:1.1rem;color:#7b16ff;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.coverage-list{list-style:none;padding:0;margin:0}.coverage-item{padding:.75rem 0;border-bottom:1px solid #f5f5f5}.coverage-item:last-child{border-bottom:none}.coverage-item a{color:#1c1b1d;text-decoration:none;font-weight:500}.coverage-item a:hover{color:#7b16ff}.coverage-outlet{display:block;font-size:.85rem;color:#666;margin-top:.25rem}.coverage-date{font-size:.8rem;color:#999;margin-left:.5rem}.coverage-roles{display:inline-flex;gap:.35rem;margin-left:.5rem;flex-wrap:wrap}.role{font-size:.7rem;padding:.15rem .4rem;border-radius:3px;background:#f0f0f0;color:#666;text-transform:capitalize}.role-interviewed,.role-quoted{background:#e8f4fd;color:#1a73e8}.role-cited,.role-referenced{background:#e6f4ea;color:#137333}.role-named,.role-mentioned{background:#fef7e0;color:#b45309}.coverage-more{margin-top:1.5rem;color:#666;font-size:.9rem}.presentations-section{margin-top:2rem;padding:1.5rem;background:#f9f9f9;border-radius:8px}.presentations-section h2{margin-top:0;margin-bottom:.5rem;font-size:1.3rem}.presentations-note{color:#666;font-size:.9rem;margin-bottom:1rem}.presentations-list{list-style:none;padding:0;margin:0}.presentation-item{padding:1rem;background:#fff;border-radius:6px;margin-bottom:.75rem;border:1px solid #eee}.presentation-item:last-child{margin-bottom:0}.presentation-main{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.presentation-conference{font-weight:600;color:#1c1b1d}.presentation-location{font-size:.9rem;color:#666}.presentation-links{display:flex;gap:.75rem;flex-wrap:wrap}.presentation-link{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.85rem;text-decoration:none;border-radius:4px;transition:all .2s ease}.presentation-link.video{background:#fee2e2;color:#dc2626}.presentation-link.video:hover{background:#fecaca}.presentation-link.slides{background:#e0e7ff;color:#4338ca}.presentation-link.slides:hover{background:#c7d2fe}.presentation-link.abstract{background:#f0fdf4;color:#16a34a}.presentation-link.abstract:hover{background:#dcfce7}.presentation-link svg{flex-shrink:0}.pub-type-badge.presentation{background:#fee2e2;color:#dc2626}@media(max-width:600px){.publication-actions{flex-direction:column}.publication-actions .btn{text-align:center}.coverage-outlet{display:block}.coverage-date,.coverage-roles{display:block;margin-left:0;margin-top:.25rem}.presentation-main{flex-direction:column;gap:.25rem}.presentation-links{flex-direction:column}.presentation-link{justify-content:center}}.custom{background:red}@import 'https://fonts.googleapis.com/css2?family=Caveat&display=swap';:root{--font-family-paragraph:courier-std, monospace}.header{font-family:Helvetica,sans-serif}.header a.header-logo{text-transform:none;letter-spacing:.8pt}::-moz-selection{color:#fff;background:#8a16ff}::selection{color:#fff;background:#8a16ff}@media(max-width:480px){body{padding:11px!important}body.frame{border:7px solid var(--highlight-color)!important}.read-externally-btn{max-width:100%!important}.content p{font-size:16px!important}}.content a{text-decoration:none;color:var(--text-color);font-weight:550;border-bottom:2px solid var(--highlight-color);box-shadow:0 1px}.signature{font-family:caveat,cursive;font-size:20pt}.intro p{font-size:20px}.content>p>code{font:15px Monaco,Consolas,andale mono,dejavu sans mono,monospace;border-top-left-radius:4px 4px;border-top-right-radius:4px 4px;border-bottom-right-radius:4px 4px;border-bottom-left-radius:4px 4px;border-width:.5px;border-style:solid;margin:0;padding:2px 6px;border-color:#ddd;box-sizing:border-box;background-color:#fff;color:#9562cc}.post-meta{margin-bottom:15px}.read-externally-btn{background:0 0;max-width:45%;position:relative;display:block;margin-bottom:1rem;background:var(--highlight-color);background:linear-gradient(0deg,var(--highlight-color) 0%,var(--highlight-color) 100%);text-align:center;line-height:3rem;padding:.25rem 1rem;z-index:3;cursor:pointer;color:#fff!important;text-decoration:none;border-radius:5px;border-bottom:none!important;font-weight:lighter!important;box-shadow:none!important}.read-externally-btn:before,.read-externally-btn:after{display:block;content:" ";border-top:none;border-right:none;border-bottom:none;border-left:none;position:absolute;width:0;height:0;opacity:0;transition:opacity 200ms ease-in-out}.read-externally-btn:before{top:-.125rem;left:0}.read-externally-btn:after{bottom:0;right:0}.read-externally-btn.external_link:hover:before{width:100%;height:100%;opacity:1;border-top:.125rem solid var(--highlight-color);border-right:.125rem solid var(--highlight-color);transition:width 300ms cubic-bezier(.07,.62,.61,1),height 150ms 300ms cubic-bezier(.07,.62,.61,1);background:0 0}.read-externally-btn.external_link:hover:after{width:100%;height:100%;opacity:1;border-bottom:.125rem solid var(--highlight-color);border-left:.125rem solid var(--highlight-color);transition:width 300ms cubic-bezier(.07,.62,.61,1),height 150ms 300ms cubic-bezier(.07,.62,.61,1);background:0 0}.read-externally-btn.external_link:hover{background:0 0;color:var(--highlight-color)!important;text-decoration:none}.bg{color:#f8f8f2;background-color:#433e56}.chroma{color:#f8f8f2;background-color:#433e56}.chroma .x{}.chroma .err{color:#cc68f3;background-color:#433e56}.chroma .cl{}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#ffc}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .line{display:flex}.chroma .k{color:#c2ffdf}.chroma .kc{color:#c2ffdf}.chroma .kd{color:#c2ffdf}.chroma .kn{color:#ffb8d1}.chroma .kp{color:#c2ffdf}.chroma .kr{color:#c2ffdf}.chroma .kt{color:#c2ffdf}.chroma .n{}.chroma .na{color:#ceb1ff}.chroma .nb{}.chroma .bp{color:#80cbc4}.chroma .nc{color:#ceb1ff}.chroma .no{color:#c5a3ff}.chroma .nd{color:#ceb1ff}.chroma .ni{}.chroma .ne{color:#ceb1ff}.chroma .nf{color:#ceb1ff}.chroma .fm{}.chroma .nl{}.chroma .nn{}.chroma .nx{}.chroma .py{}.chroma .nt{color:#ffb8d1}.chroma .nv{}.chroma .vc{}.chroma .vg{}.chroma .vi{}.chroma .vm{}.chroma .l{color:#ae81ff}.chroma .ld{color:#e6db74}.chroma .s{color:#1bc5e0}.chroma .sa{color:#1bc5e0}.chroma .sb{color:#1bc5e0}.chroma .sc{color:#1bc5e0}.chroma .dl{color:#1bc5e0}.chroma .sd{color:#1bc5e0}.chroma .s2{color:#1bc5e0}.chroma .se{color:#1bc5e0}.chroma .sh{color:#1bc5e0}.chroma .si{color:#1bc5e0}.chroma .sx{color:#1bc5e0}.chroma .sr{color:#1bc5e0}.chroma .s1{color:#1bc5e0}.chroma .ss{color:#1bc5e0}.chroma .m{color:#c5a3ff}.chroma .mb{color:#c5a3ff}.chroma .mf{color:#c5a3ff}.chroma .mh{color:#c5a3ff}.chroma .mi{color:#c5a3ff}.chroma .il{color:#c5a3ff}.chroma .mo{color:#c5a3ff}.chroma .o{color:#ffb8d1}.chroma .ow{color:#ffb8d1}.chroma .p{}.chroma .c{color:#b0bec5}.chroma .ch{color:#b0bec5}.chroma .cm{color:#b0bec5}.chroma .c1{color:#b0bec5}.chroma .cs{color:#b0bec5}.chroma .cp{color:#b0bec5}.chroma .cpf{color:#b0bec5}.chroma .g{}.chroma .gd{color:#f92672}.chroma .ge{font-style:italic}.chroma .gr{}.chroma .gh{}.chroma .gi{color:#a6e22e}.chroma .go{}.chroma .gp{}.chroma .gs{font-weight:700}.chroma .gu{color:#75715e}.chroma .gt{}.chroma .gl{}.chroma .w{color:#a8757b}