*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#070b13;
  --panel:rgba(12,20,34,.68);
  --panel-soft:rgba(158,231,220,.07);
  --ink:#eef8f6;
  --muted:rgba(238,248,246,.58);
  --line:rgba(158,231,220,.18);
  --accent:#9ee7dc;
  --green:#b8f5c7;
  --shadow:0 24px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","PingFang SC","Helvetica Neue",Arial,sans-serif;
}
html{scroll-behavior:smooth}
body{min-height:100vh;background:radial-gradient(circle at 72% 12%,rgba(158,231,220,.14),transparent 28%),radial-gradient(circle at 20% 80%,rgba(184,245,199,.08),transparent 30%),linear-gradient(145deg,#050711,#0a1020 48%,#071018);color:var(--ink);font-family:var(--font);line-height:1.7;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1px);background-size:42px 42px;opacity:.055;mask:linear-gradient(to bottom,#000,transparent 90%)}
.shell{width:min(1120px,calc(100vw - 2rem));margin:0 auto;padding:6rem 0 4rem;position:relative;z-index:1}
.topbar{position:fixed;top:1rem;left:50%;transform:translateX(-50%);z-index:10;width:min(1120px,calc(100vw - 1.5rem));display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:999px;background:rgba(7,11,19,.62);backdrop-filter:blur(18px) saturate(150%);box-shadow:var(--shadow)}
.brand,.back{color:var(--ink);text-decoration:none;border-radius:999px;transition:.22s ease}
.brand{font-weight:700;letter-spacing:-.03em;padding:.45rem .8rem}
.back{font-size:.85rem;color:var(--muted);padding:.45rem .85rem;border:1px solid transparent}
.back:hover{color:var(--accent);border-color:var(--line);background:rgba(158,231,220,.08);transform:translateY(-1px)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end;margin-bottom:2.2rem}
.kicker{color:var(--accent);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.5rem}
h1{font-size:clamp(2.4rem,7vw,5rem);line-height:.98;letter-spacing:-.07em}
.desc{max-width:680px;color:var(--muted);font-size:1rem;margin-top:1rem}
.orb{width:150px;height:150px;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.3),rgba(158,231,220,.2) 30%,rgba(10,18,30,.25) 58%,transparent 76%);box-shadow:0 0 70px rgba(158,231,220,.16),inset 0 0 38px rgba(255,255,255,.08);position:relative}
.orb::after{content:"";position:absolute;inset:-18px;border:1px solid rgba(158,231,220,.2);border-radius:50%;animation:spin 18s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.grid{display:grid;gap:1rem}
.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card,.panel{border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,var(--panel),var(--panel-soft));box-shadow:var(--shadow);backdrop-filter:blur(18px);transition:.24s ease}
.card{padding:1.15rem;cursor:pointer}
.card:hover{transform:translateY(-6px);border-color:rgba(158,231,220,.38);box-shadow:0 30px 88px rgba(0,0,0,.38),0 0 44px rgba(158,231,220,.09)}
.tag{display:inline-flex;padding:.22rem .62rem;border-radius:999px;border:1px solid var(--line);color:var(--accent);font-size:.72rem;margin-bottom:.75rem;background:rgba(158,231,220,.06)}
.title{font-size:1.12rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.35rem}
.meta{font-size:.78rem;color:var(--muted);margin-bottom:.55rem}
.summary{font-size:.9rem;color:var(--muted)}
.panel{padding:1.2rem;margin-bottom:1rem}
.section-title{font-size:1.35rem;margin-bottom:.85rem;letter-spacing:-.04em}
.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.tab{border:1px solid var(--line);background:rgba(158,231,220,.06);color:var(--muted);border-radius:999px;padding:.45rem .8rem;cursor:pointer;transition:.22s ease}
.tab:hover,.tab.active{color:var(--accent);transform:translateY(-2px);background:rgba(158,231,220,.12)}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}
.photo{min-height:170px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(158,231,220,.06));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;cursor:pointer;overflow:hidden;transition:.24s ease}
.photo:hover{transform:translateY(-5px) scale(1.01);border-color:rgba(158,231,220,.38)}
.photo .emoji{font-size:2.8rem}
.photo img{width:100%;height:100%;object-fit:cover;display:block}
.timeline{display:grid;gap:.9rem}
.entry{padding:1rem 1.1rem;border-left:2px solid var(--accent);border-radius:20px;background:rgba(255,255,255,.045)}
.entry time{display:block;color:var(--accent);font-size:.78rem;margin-bottom:.35rem}
.track{display:flex;align-items:center;gap:.85rem;padding:.85rem;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.045);transition:.22s ease}
.track:hover{transform:translateX(4px);background:rgba(158,231,220,.08)}
.cover{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,rgba(158,231,220,.28),rgba(184,245,199,.08));font-size:1.55rem;flex:0 0 auto}
.cover img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.track strong{display:block}
.track span{color:var(--muted);font-size:.84rem}
.embed-box{min-height:120px;display:grid;place-items:center;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:22px;background:rgba(158,231,220,.04)}
.music-search-form{display:grid;grid-template-columns:1fr auto;gap:.55rem;margin-top:.8rem}
.music-search-form input{min-width:0;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.055);color:var(--ink);padding:.78rem .95rem;outline:none}
.music-search-form input:focus{border-color:rgba(158,231,220,.45);box-shadow:0 0 0 3px rgba(158,231,220,.1)}
.music-search-form button{border:1px solid rgba(158,231,220,.28);border-radius:999px;background:linear-gradient(145deg,rgba(158,231,220,.18),rgba(245,158,11,.1));color:var(--ink);padding:.78rem 1rem;cursor:pointer}
.music-search-note,.music-search-status{color:var(--muted);font-size:.84rem;line-height:1.7;margin-top:.6rem}
.music-search-results{display:grid;gap:.75rem;margin-top:1rem}
.music-search-results .track{cursor:pointer}
.music-preview{width:100%;margin-top:.85rem}
.lightbox{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.72);backdrop-filter:blur(18px);padding:1rem}
.lightbox.show{display:flex}
.lightbox-card{max-width:720px;width:min(92vw,720px);border-radius:28px;border:1px solid var(--line);background:rgba(8,13,23,.9);box-shadow:var(--shadow);padding:1.4rem;text-align:center}
.lightbox-emoji{font-size:6rem}
.lightbox button{margin-top:1rem;border:none;border-radius:999px;padding:.7rem 1rem;background:rgba(158,231,220,.14);color:var(--accent);cursor:pointer}
@media(max-width:760px){.shell{padding-top:5.2rem}.hero{grid-template-columns:1fr}.orb{display:none}.topbar{top:.65rem}.cards{grid-template-columns:1fr}.music-search-form{grid-template-columns:1fr}}
