/* DRIFT: dark generative field, grain, hairlines, glass, chrome accents */
:root{--tx:#d4d1e2;--tx2:#a6a3bf;--tx3:#8b88a6;--hl:#e8e6f233}
body{background:#050509!important;color:var(--tx)!important;font:13px/1.7 "Courier New",monospace!important;display:block!important;padding:0!important}
#field{position:fixed;left:-5%;top:-5%;width:110%;height:110%;z-index:-3;filter:blur(30px) saturate(1.2);opacity:.9;will-change:transform}
body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.07;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");mix-blend-mode:overlay}
.bgvid{display:none!important}
main,.shell{max-width:560px!important;width:auto!important;margin:0 auto;padding:36px 22px 90px!important;text-align:left!important;position:relative}
h1{font:300 17px "Courier New",monospace!important;letter-spacing:.5em;text-transform:lowercase;background:linear-gradient(180deg,#fff 0,#dfe6f2 38%,#8f9ab3 50%,#e9ecf6 58%,#b9a7ff 80%,#9ff0ff 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;color:transparent!important;filter:none!important;text-align:left!important;margin:0 0 8px!important}
.nav{display:flex;flex-wrap:wrap;gap:4px 18px;justify-content:flex-start!important;margin:0 0 46px!important}
.nav a{all:unset;cursor:pointer;font-size:11px;letter-spacing:.28em;color:var(--tx3);text-transform:lowercase;padding:3px 0;border-bottom:1px solid transparent;transition:color .3s}
.nav a:hover,.nav a:focus-visible{color:#fff}
.nav a.on{color:#f1effa;border-color:#e8e6f299}
h2{font:300 13px "Courier New",monospace!important;letter-spacing:.4em;text-transform:lowercase;color:#f1effa!important;text-shadow:none!important;margin:48px 0 14px!important;padding-bottom:10px;border-bottom:1px solid var(--hl)}
p{font-size:13px;line-height:1.85;color:var(--tx)}
a.t{color:#cfe9ff;text-decoration:none;border-bottom:1px solid #cfe9ff55}
.tag{font:13px "Courier New",monospace!important;color:var(--tx2)!important;letter-spacing:.2em;text-align:left;margin:0 0 30px!important}
.center{text-align:left!important}
/* portal: large on home player, small mark elsewhere */
.portal{display:block;width:84px!important;height:90px!important;margin:0 0 30px!important;object-fit:cover;border-radius:50%/48%;box-shadow:none!important;filter:saturate(.6) brightness(.95);-webkit-mask:radial-gradient(ellipse,#000 52%,#0000 72%);mask:radial-gradient(ellipse,#000 52%,#0000 72%)}
.player:not(.vp) .portal{width:78%!important;height:auto!important;aspect-ratio:1/1.06;margin:30px 0 30px 10%!important;animation:dr 24s ease-in-out infinite alternate}
@keyframes dr{from{transform:translate(-1.5%,0) scale(1)}to{transform:translate(1.5%,-1%) scale(1.03)}}
/* list rows (music, cv) */
.item{margin:0!important;padding:16px 0!important;border:0!important;border-bottom:1px solid var(--hl)!important;border-radius:0!important;background:none!important}
.item small{color:var(--tx3)!important;letter-spacing:.22em;font-size:11px}
/* links page */
.list{gap:0!important}
.btn{all:unset;display:block;box-sizing:border-box;cursor:pointer;padding:16px 0;border-bottom:1px solid var(--hl);color:var(--tx);font-size:13px;letter-spacing:.14em;transition:padding .3s,color .3s}
.btn:hover,.btn:focus-visible{padding-left:10px;color:#fff;box-shadow:none}
.btn small{display:block;font-size:10px;letter-spacing:.3em;color:var(--tx3);margin-bottom:2px}
.hot{background:none!important;color:#f1effa}
/* about / photos */
.artist,.ph img,.gal img,.gal video,.vbtn,.vf video{border-radius:6px!important}
.artist{border:1px solid var(--hl)!important;max-width:100%!important}
.ph,.vf{padding:0!important;border:0!important;background:none!important;margin:20px 0!important}
.ph p{margin:8px 0 0!important}.ph small,.cr{color:var(--tx3)!important;letter-spacing:.22em;font-size:11px}
.gal a,.gal video{border:1px solid var(--hl)!important}
.gal .v:after{background:#050509cc!important;color:#e8e6f2!important;border-radius:3px!important}
.vbtn{border:1px solid var(--hl)!important}
/* player (home + selected works video player) */
.player{all:unset;display:block}
.player.vp{display:block;padding:18px 16px 6px;margin:12px 0 28px;border-radius:22px;border:1px solid transparent;background:linear-gradient(#0a0a1499,#0a0a1466) padding-box,linear-gradient(150deg,#ffffff88,#9ff0ff22 30%,#b9a7ff22 60%,#ffd1f3aa) border-box;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.player:not(.vp){padding:22px 20px 6px;margin:0 -6px;border-radius:26px;border:1px solid transparent;background:linear-gradient(#0a0a1499,#0a0a1466) padding-box,linear-gradient(150deg,#ffffff88,#9ff0ff22 30%,#b9a7ff22 60%,#ffd1f3aa) border-box;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:block}
.tb,.bars,.note,#sclink{display:none!important}
.lcds{display:block!important;margin:0!important}
.lcd{all:unset;display:block}
.lcd .sm{display:block!important;font-size:10px;letter-spacing:.3em;color:var(--tx3)!important}
.time{font:300 52px "Courier New",monospace!important;background:linear-gradient(180deg,#fff 0,#dfe6f2 38%,#8f9ab3 50%,#e9ecf6 58%,#b9a7ff 80%,#9ff0ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none!important;letter-spacing:.06em}
.ttl{font-size:13px!important;letter-spacing:.16em;color:var(--tx2)!important;text-transform:lowercase;white-space:normal!important}
.scr{background:#000;border:1px solid var(--hl)!important;border-radius:8px!important;box-shadow:none!important}
.rng{width:100%;appearance:none;height:1px;background:#e8e6f255;accent-color:#e8e6f2;margin:6px 0 20px}
.ctl{display:flex;justify-content:space-between;align-items:center;margin:0 0 32px!important;flex-wrap:wrap;gap:12px}
.btns{display:flex;gap:26px;margin:0!important;align-items:center}
.btns button{all:unset;cursor:pointer;color:var(--tx2);font-size:15px}
.btns .main{background:none!important;border:1px solid #e8e6f299!important;width:44px!important;height:44px!important;border-radius:50%!important;display:grid!important;place-items:center;color:#f1effa;font-size:15px}
.vol{font-size:11px;letter-spacing:.3em;color:var(--tx3);margin:0!important;display:flex;gap:10px;align-items:center}
.mt{all:unset;cursor:pointer;font-size:11px;letter-spacing:.24em;color:var(--tx2)!important;border:1px solid var(--hl)!important;border-radius:3px!important;padding:6px 10px!important;background:none!important}
.mt[aria-pressed=true]{color:#f1effa!important;border-color:#e8e6f299!important}
.pl{list-style:none;padding:0;margin:0;border-top:1px solid var(--hl)}
.pl li{border-bottom:1px solid var(--hl)}
.pl button{all:unset;display:block;box-sizing:border-box;width:100%;padding:14px 0;cursor:pointer;color:var(--tx2);font-size:13px;letter-spacing:.12em}
.pl button span{color:var(--tx3);margin-right:18px;font-size:11px}
.pl button em{display:block!important;margin:2px 0 0 34px!important;color:var(--tx3);font-style:normal;font-size:11px;letter-spacing:.18em}
.pl li.on button{color:#fff;background:none!important;border:0!important}.pl li.on button span{color:#fff}
.pl li.grp{margin:0!important;padding:14px 0 6px;font-size:11px;letter-spacing:.3em;color:var(--tx3)!important;border:0}.pl li.grp small{color:var(--tx3);letter-spacing:.2em}
.vp .pl{max-height:340px;overflow:auto}
body.fx-in main,body.fx-in .shell{animation:fi .4s ease-out both}
@keyframes fi{from{opacity:0}to{opacity:1}}
body.fx-out main,body.fx-out .shell{opacity:0;transition:opacity .12s}
@media (prefers-reduced-motion:reduce){.player:not(.vp) .portal{animation:none}body.fx-in main,body.fx-in .shell{animation:none}}
.nav a.on{background:none!important}
.nav{gap:4px 14px!important}.nav a{letter-spacing:.18em!important;font-size:10.5px!important}
