@import url(https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;700&family=Bebas+Neue&family=Montserrat:wght@400;700&family=Oswald:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&family=Play:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap);@import url(https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;700&family=Bebas+Neue&display=swap);@import url(https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;0,900&display=swap);*{box-sizing:border-box;margin:0;padding:0}body{background-color:#000;color:#fff;font-family:Merriweather,serif}h1,h2,h3{font-family:Merriweather,sans-serif;font-weight:700}.about a,.home-page a{border-bottom:1px solid #666;color:#fff;font-family:inherit;font-size:inherit;text-decoration:none;transition:border-color .2s ease}.about a:hover,.home-page a:hover{border-bottom-color:#fff;color:#fff;text-decoration:none}.home-page{background-color:#000;color:#fff;display:flex;flex-direction:column;font-family:Merriweather,serif;height:calc(100vh - 45px);max-height:calc(100vh - 45px);overflow:hidden}.content,.home-page{box-sizing:border-box}.content{grid-column-gap:0;column-gap:0;display:grid;flex:1 1;grid-template-columns:240px 1fr;grid-template-rows:1fr auto;margin:0 auto;max-width:960px;min-height:0;padding:3rem 2rem;width:100%}.intro-image{align-items:flex-start;border-right:1px solid #333;display:flex;flex-direction:column;grid-column:1;grid-row:1/3;min-height:0;padding-right:2.5rem;padding-top:.25rem}.profile-photo{border-radius:50%;filter:grayscale(15%);height:110px;margin-bottom:1.25rem;object-fit:cover;width:110px}.name{color:#fff;font-family:Bebas Neue,sans-serif;font-size:1.6rem;letter-spacing:3px;line-height:1;margin:0 0 .3rem}.name,.tagline{font-weight:400;text-transform:uppercase}.tagline{color:#999;font-family:Barlow Condensed,sans-serif;font-size:.85rem;letter-spacing:1.5px;line-height:1.5;margin:0}.identity-meta{display:flex;flex-direction:column;gap:.3rem;margin-top:auto;padding-top:1.5rem}.identity-meta-item{color:#666;font-family:Barlow Condensed,sans-serif;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.intro-text{grid-column:2;grid-row:1;min-height:0;overflow:hidden;padding-left:2.5rem}.about h2{color:#777;font-family:Barlow Condensed,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:4px;margin:0 0 1.25rem;text-transform:uppercase}.bio p{color:#ccc;font-size:.95rem;font-weight:300;line-height:1.85;margin-bottom:1rem}.bio p:last-child{margin-bottom:0}.invitation{border-top:1px solid #222;grid-column:2;grid-row:2;margin-top:1.25rem;padding-left:2.5rem;padding-top:1.25rem}.invitation p{color:#777;font-family:Barlow Condensed,sans-serif;font-size:.85rem;letter-spacing:.3px;margin:0}.invitation a{border-bottom:1px solid #666!important;color:#aaa!important;font-family:Barlow Condensed,sans-serif!important;font-size:.85rem!important}.invitation a:hover{border-bottom-color:#fff!important;color:#fff!important}.social-links{border-top:1px solid #1a1a1a;gap:2rem;justify-content:center;padding:1rem 0}.social-links,.social-links a{align-items:center;display:flex}.social-links a{border-bottom:none!important;color:#666;font-size:1rem;text-decoration:none;transition:color .2s ease}.social-links a:hover{border-bottom:none!important;color:#fff}@media screen and (max-width:768px){.home-page{height:auto;max-height:none;overflow:visible}.content{grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:2rem 1.5rem}.intro-image{align-items:center;border-bottom:1px solid #333;border-right:none;flex-direction:row;gap:1.25rem;grid-column:1;grid-row:1;margin-bottom:1.5rem;padding-bottom:1.5rem;padding-right:0}.profile-photo{flex-shrink:0;height:72px;margin-bottom:0;width:72px}.identity-meta{display:none}.intro-text{grid-row:2;overflow:visible}.intro-text,.invitation{grid-column:1;padding-left:0}.invitation{grid-row:3}}.navigation{background-color:#000;border-bottom:1px solid #222}.navigation ul{display:flex;gap:0;justify-content:center;list-style:none;margin:0;padding:0}.navigation ul li{display:block}.navigation ul li a,.navigation ul li a:visited{border-bottom:none;color:#888;display:inline-block;font-family:Barlow Condensed,sans-serif;font-size:.85rem;letter-spacing:3px;padding:1rem 1.5rem;text-decoration:none;text-transform:uppercase;transition:color .2s ease}.navigation ul li a:hover{border-bottom:none;color:#fff;text-decoration:none}@media screen and (max-width:480px){.navigation ul li a{font-size:.8rem;letter-spacing:2px;padding:.75rem 1rem}}.lastfm-stats{background-color:#000;color:#fff;display:flex;flex-direction:column;font-family:Montserrat,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.lastfm-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.lastfm-title{font-family:Bebas Neue,sans-serif;font-size:3rem;letter-spacing:4px;line-height:1;margin:0}.lastfm-subtitle{color:#888;font-family:Barlow Condensed,sans-serif;font-size:.85rem;letter-spacing:1px;margin-top:.3rem;text-transform:uppercase}.header-chips{display:flex;gap:1rem}.stat-chip{align-items:center;border:1px solid #333;border-radius:4px;display:flex;flex-direction:column;min-width:80px;padding:.5rem 1rem}.stat-chip-value{font-family:Bebas Neue,sans-serif;font-size:1.5rem;line-height:1}.stat-chip-label{color:#888;font-size:.65rem;letter-spacing:1px;margin-top:2px;text-transform:uppercase}.insight-banner{align-items:center;background-color:#111;border-left:3px solid #e31a1a;color:#eee;display:flex;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;gap:.75rem;letter-spacing:.5px;margin-bottom:1.5rem;padding:.75rem 1rem}.insight-icon{color:#e31a1a;font-size:1.3rem;font-weight:700}.lastfm-loading{color:#555;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;letter-spacing:2px;padding:4rem;text-align:center;text-transform:uppercase}.period-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.period-tab{background:#0000;border:1px solid #333;border-radius:2px;color:#666;cursor:pointer;font-family:Barlow Condensed,sans-serif;font-size:1rem;letter-spacing:1px;padding:.4rem 1rem;text-transform:uppercase;transition:all .2s}.period-tab.active{background:#fff;border-color:#fff;color:#000}.period-tab:hover:not(.active){border-color:#666;color:#ccc}.period-summary{border:1px solid #1a1a1a;border-radius:4px;display:flex;flex-wrap:wrap;gap:0;margin-bottom:1.5rem;overflow:hidden}.summary-item{background-color:#0a0a0a;border-right:1px solid #1a1a1a;display:flex;flex:1 1;flex-direction:column;min-width:140px;padding:.75rem 1rem}.summary-item:last-child{border-right:none}.summary-value{color:#fff;font-size:1rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-label,.summary-value{font-family:Barlow Condensed,sans-serif}.summary-label{color:#555;font-size:.65rem;letter-spacing:1px;margin-top:2px;text-transform:uppercase}.content-tabs{border-bottom:1px solid #1a1a1a;display:flex;gap:0;margin-bottom:1.5rem}.content-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#555;cursor:pointer;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;letter-spacing:2px;margin-bottom:-1px;padding:.6rem 1.5rem;text-transform:uppercase;transition:all .2s}.content-tab.active{border-bottom-color:#e31a1a;color:#fff}.content-tab:hover:not(.active){color:#aaa}.card{background-color:#0d0d0d;border:1px solid #1a1a1a;border-radius:6px;padding:1.25rem}.card-title{color:#666;font-family:Barlow Condensed,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:3px;margin:0 0 1rem;text-transform:uppercase}.card-desc{color:#555;font-size:.8rem;margin-bottom:.75rem;margin-top:-.5rem}.main-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 360px;margin-bottom:1rem}.right-col{display:flex;flex-direction:column;gap:1rem}.artist-row{align-items:center;display:flex;gap:.75rem;margin-bottom:.85rem}.artist-rank{color:#444;flex-shrink:0;font-family:Bebas Neue,sans-serif;font-size:1rem;text-align:right;width:28px}.artist-info{flex:1 1;min-width:0}.artist-name{display:block;font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:700;letter-spacing:.5px;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background-color:#1a1a1a;border-radius:2px;height:3px;overflow:hidden}.bar-fill{background-color:#e31a1a;border-radius:2px;height:100%;transition:width .6s ease}.artist-plays{color:#555;flex-shrink:0;font-family:Barlow Condensed,sans-serif;font-size:.8rem;min-width:50px;text-align:right}.album-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.album-grid-item{background:#111;border-radius:4px;overflow:hidden;position:relative}.album-grid-img{aspect-ratio:1;display:block;filter:brightness(.75);object-fit:cover;transition:filter .2s;width:100%}.album-grid-item:hover .album-grid-img{filter:brightness(.5)}.album-grid-placeholder{aspect-ratio:1;background:#1a1a1a;width:100%}.album-grid-overlay{display:flex;justify-content:space-between;left:0;padding:.4rem .5rem;position:absolute;right:0;top:0}.album-grid-rank{color:#ffffffe6;font-family:Bebas Neue,sans-serif;font-size:1rem;text-shadow:0 1px 4px #000c}.album-grid-plays{color:#ffffffb3;font-family:Barlow Condensed,sans-serif;font-size:.75rem;text-shadow:0 1px 4px #000c}.album-grid-meta{padding:.4rem .5rem .5rem}.album-grid-name{font-size:.85rem;font-weight:700}.album-grid-artist,.album-grid-name{display:block;font-family:Barlow Condensed,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.album-grid-artist{color:#666;font-size:.75rem}.track-row{align-items:center;border-bottom:1px solid #111;display:flex;gap:.75rem;margin-bottom:.75rem;padding-bottom:.75rem}.track-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.track-rank{color:#333;flex-shrink:0;font-family:Bebas Neue,sans-serif;font-size:1.1rem;text-align:right;width:20px}.track-thumb{border-radius:3px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.track-thumb-empty{background:#1a1a1a;border-radius:3px}.track-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.track-name{font-size:.95rem;font-weight:700}.track-artist,.track-name{font-family:Barlow Condensed,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-artist{color:#666;font-size:.75rem}.track-plays{color:#555;flex-shrink:0;font-family:Barlow Condensed,sans-serif;font-size:.8rem;min-width:50px;text-align:right}.tag-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.tag{border-radius:3px;font-family:Barlow Condensed,sans-serif;font-size:.9rem;letter-spacing:.5px;padding:.25rem .6rem}.tag-rising{background-color:#001a0d;border:1px solid #004d25;color:#4dffaa}.tag-faded{background-color:#1a1000;border:1px solid #4d3000;color:#ffb84d}.action-hint{color:#888;font-size:.8rem;font-style:italic;margin:0}.recent-row{align-items:center;display:flex;gap:.75rem;margin-bottom:.65rem}.recent-thumb{border-radius:3px;flex-shrink:0;height:36px;object-fit:cover;width:36px}.recent-thumb-empty{background:#1a1a1a;border-radius:3px}.recent-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.recent-name{font-size:.95rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-artist,.recent-name{font-family:Barlow Condensed,sans-serif}.recent-artist{color:#666;font-size:.75rem}.now-badge{animation:pulse 1.5s infinite;background-color:#e31a1a;border-radius:3px;color:#fff;flex-shrink:0;font-family:Barlow Condensed,sans-serif;font-size:.7rem;letter-spacing:1px;padding:2px 6px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.cta-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;margin-top:1.5rem}.cta-btn{border:1px solid #fff;border-radius:3px;color:#fff;display:inline-block;font-family:Barlow Condensed,sans-serif;font-size:1rem;letter-spacing:1px;padding:.6rem 1.2rem;text-decoration:none;text-transform:uppercase;transition:background .2s,color .2s}.cta-btn:hover{background-color:#fff;color:#000}.cta-btn.secondary{border-color:#444;color:#666}.cta-btn.secondary:hover{background-color:#444;color:#fff}.last-updated{color:#333;font-family:Barlow Condensed,sans-serif;font-size:.75rem;letter-spacing:1px;margin-top:auto;padding-top:1rem;text-align:center}@media screen and (max-width:900px){.main-grid{grid-template-columns:1fr}.album-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:600px){.lastfm-title{font-size:2rem}.header-chips,.period-summary{display:none}.album-grid{grid-template-columns:repeat(2,1fr)}}.loading-bar{align-items:center;color:#555;display:flex;font-family:Barlow Condensed,sans-serif;font-size:.85rem;gap:.6rem;letter-spacing:1px;margin-bottom:1rem;padding:.6rem 0;text-transform:uppercase}.loading-dot{animation:pulse 1s infinite;background:#e31a1a;border-radius:50%;flex-shrink:0;height:6px;width:6px}.loading-text{color:#555}.tab-loading{color:#444;font-size:.8rem}.publications-page{background-color:#000;box-sizing:border-box;color:#fff;display:block!important;font-family:Merriweather,serif;min-height:100vh}.publications-wrap{display:block!important;grid-template-columns:none!important;margin:0 auto;max-width:760px;padding:4rem 2rem 5rem}.publications-heading{display:block;font-family:Bebas Neue,sans-serif;font-size:3rem;letter-spacing:4px;line-height:1;margin:0 0 .4rem}.publications-subheading{color:#777;display:block;font-family:Barlow Condensed,sans-serif;font-size:.85rem;letter-spacing:3px;margin:0 0 3rem;text-transform:uppercase}.publication{grid-gap:0 1.5rem;background:none;border-bottom:1px solid #222;border-radius:0;box-sizing:border-box;display:grid!important;gap:0 1.5rem;grid-template-columns:52px 1fr!important;margin-bottom:0;padding:2rem 0;width:100%}.publication:last-of-type{border-bottom:none}.pub-year{color:#666;font-family:Bebas Neue,sans-serif;font-size:1rem;letter-spacing:1px;line-height:1;padding-top:4px;text-align:right}.pub-body{display:flex;flex-direction:column;gap:.4rem;min-width:0}.pub-title{color:#fff;font-family:Merriweather,serif;font-size:1rem;font-weight:700;line-height:1.55;margin:0}.pub-authors{color:#888;font-family:Barlow Condensed,sans-serif;font-size:.95rem;letter-spacing:.3px;margin:0}.pub-authors .own-name{color:#ddd;font-weight:700}.pub-venue{color:#666;font-family:Barlow Condensed,sans-serif;font-size:.9rem;font-style:italic;letter-spacing:.3px;margin:0}.publication-links{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.pub-link{align-items:center;border:1px solid #333;border-radius:2px;color:#888;display:inline-flex;font-family:Barlow Condensed,sans-serif;font-size:.75rem;gap:.3rem;letter-spacing:1.5px;padding:.25rem .6rem;text-decoration:none;text-transform:uppercase;transition:color .2s ease,border-color .2s ease}.pub-link:hover{border-color:#888;color:#fff;text-decoration:none}.summary-toggle{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:inline-flex;font-family:Barlow Condensed,sans-serif;font-size:.75rem;gap:.35rem;letter-spacing:1.5px;margin-left:auto;padding:.25rem 0;text-transform:uppercase;transition:color .2s}.summary-toggle:hover{color:#fff}.summary-toggle:disabled{cursor:default;opacity:.4}.summary-content{background-color:#0a0a0a;border:1px solid #222;border-left:2px solid #444;border-radius:2px;margin-top:1.25rem;padding:1.25rem 1.5rem}.summary-content h4{color:#777;font-family:Barlow Condensed,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:3px;margin:0 0 1rem;text-transform:uppercase}.summary-text-section{margin-bottom:1rem}.summary-text-section:last-child{margin-bottom:0}.summary-text-section h5{color:#888;font-family:Barlow Condensed,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:2px;margin:0 0 .5rem;text-transform:uppercase}.summary-text-section li,.summary-text-section p{color:#aaa;font-size:.88rem;font-weight:300;line-height:1.75;margin:0 0 .5rem}.summary-text-section ol,.summary-text-section ul{margin:0 0 .5rem;padding-left:1.25rem}.publications-page .social-links{align-items:center;border-top:1px solid #222;display:flex;gap:2rem;justify-content:center;margin-top:1rem;padding:2.5rem 0 0}.publications-page .social-links a{border-bottom:none!important;color:#666;font-size:1rem;text-decoration:none;transition:color .2s ease}.publications-page .social-links a:hover{color:#fff}@media screen and (max-width:600px){.publications-wrap{padding:2rem 1.25rem 3rem}.publications-heading{font-size:2rem}.publication{gap:0 .75rem;grid-template-columns:40px 1fr!important}.summary-toggle{margin-left:0;margin-top:.25rem}}.contact{align-items:center;background-color:#000;box-sizing:border-box;color:#fff;display:flex;font-family:Merriweather,serif;justify-content:center;min-height:calc(100vh - 45px);padding:3rem 2rem}.contact-inner{max-width:560px;width:100%}.contact-label{color:#777;font-family:Barlow Condensed,sans-serif;font-size:.75rem;letter-spacing:4px;margin:0 0 .75rem;text-transform:uppercase}.contact-title{color:#fff;font-family:Bebas Neue,sans-serif;font-size:3rem;letter-spacing:4px;line-height:.9;margin:0 0 1.5rem}.contact-desc{color:#aaa;font-size:.95rem;font-weight:300;line-height:1.8;margin:0 0 2.5rem}.contact-methods{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.contact-method{align-items:center;background-color:#0a0a0a;border:1px solid #2a2a2a;border-radius:4px;color:#fff;display:flex;gap:1rem;padding:1rem 1.25rem;text-decoration:none;transition:border-color .2s ease,background-color .2s ease}.contact-method:hover{background-color:#111;border-color:#666;color:#fff;text-decoration:none}.contact-method svg{color:#888;flex-shrink:0;font-size:1rem;width:16px}.method-label{color:#777;flex-shrink:0;font-size:.75rem;letter-spacing:2px;text-transform:uppercase;width:52px}.method-label,.method-value{font-family:Barlow Condensed,sans-serif}.method-value{color:#ddd;font-size:1.05rem;letter-spacing:.5px}.contact-divider{background-color:#222;height:1px;margin-bottom:1.5rem}.contact-also{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.contact-also-label{color:#666;flex-shrink:0;font-family:Barlow Condensed,sans-serif;font-size:.75rem;letter-spacing:2px;text-transform:uppercase}.contact-also-links{display:flex;gap:1rem}.contact-also-links a{align-items:center;border-bottom:none;color:#888;display:inline-flex;font-family:Barlow Condensed,sans-serif;font-size:.85rem;gap:.4rem;letter-spacing:1px;text-decoration:none;text-transform:uppercase;transition:color .2s ease}.contact-also-links a:hover{border-bottom:none;color:#fff;text-decoration:none}@media screen and (max-width:480px){.contact-title{font-size:3.5rem}.contact-desc br{display:none}.contact-also{flex-direction:column;gap:.75rem}}
/*# sourceMappingURL=main.7d963e82.css.map*/