/* Scoped to the guest title and the optional constellation dialog. */
.guest-mark.stardust-trigger {
  padding:0; border:0; background:none; text-align:left; cursor:pointer;
}
.guest-mark.stardust-trigger img { border-radius:50%; }
.guest-mark.stardust-trigger:hover img { filter:drop-shadow(0 0 14px #e9bd7266); }
.guest-mark .stardust-secret-star { color:#e9bd72; font-size:14px; letter-spacing:0; }
.stardust-title { position:relative; display:block; width:min(100%,800px); height:clamp(82px,10vw,124px); }
.stardust-title-text { display:block; padding-top:.12em; }
#stardustTitle { position:absolute; inset:0; display:block; width:100%; height:100%; touch-action:pan-y; }
.stardust-title.is-ready .stardust-title-text {
  position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%);
}
.guest-title--stardust em {
  margin-top:4px; font:italic 400 clamp(24px,2.8vw,36px)/1.25 Georgia,serif;
  letter-spacing:.03em; text-transform:none; background:none;
  -webkit-text-fill-color:currentColor; color:#e7d3b1; filter:none;
}
html body .unified-header button.site-header-brand.stardust-trigger {
  padding:0; border:0; background:none; text-align:left; cursor:pointer;
}
.stardust-trigger:focus-visible { outline:2px solid #e9bd72; outline-offset:6px; border-radius:5px; }
dialog#stardustDialog {
  --sd-gold:#e9bd72; --sd-bright:#ffe6b0; --sd-particle:#e9bd72;
  --sd-panel:#0d1522; --sd-field:#080e18; --sd-ink:#ebedf2;
  --sd-muted:#a7b0bf; --sd-line:#293446; --sd-accent:#e9bd72;
  position:fixed; inset:0; width:min(710px,calc(100% - 32px)); max-width:710px;
  max-height:calc(100dvh - 32px); margin:auto; padding:0; overflow:auto;
  border:1px solid var(--sd-line); border-radius:16px; box-sizing:border-box;
  background:var(--sd-panel); color:var(--sd-ink); box-shadow:0 25px 90px #0006;
  font:14px/1.5 'Segoe UI',Arial,sans-serif; text-align:left; color-scheme:dark;
}
dialog#stardustDialog:not([open]) { display:none; }
dialog#stardustDialog::backdrop { background:#020710bd; backdrop-filter:blur(8px); }
html[data-theme="light"] dialog#stardustDialog {
  --sd-particle:#92611e; --sd-panel:#fffdf7; --sd-field:#eee9df;
  --sd-ink:#222c39; --sd-muted:#626d7c; --sd-line:#ddd5c6; --sd-accent:#92611e; color-scheme:light;
}
#stardustDialog * { box-sizing:border-box; }
#stardustDialog [hidden] { display:none !important; }
#stardustDialog h2,#stardustDialog p { margin:0; }
#stardustDialog button,#stardustDialog input { font:inherit; }
#stardustDialog button { cursor:pointer; }
#stardustDialog button:focus-visible,#stardustDialog input:focus-visible { outline:2px solid var(--sd-accent); outline-offset:3px; }
#stardustDialog .sd-header { display:flex; align-items:center; justify-content:space-between; padding:14px 18px 0 25px; }
#stardustDialog .sd-secret { display:flex; align-items:center; gap:10px; color:var(--sd-accent); letter-spacing:2.3px; font-size:10px; }
#stardustDialog .sd-secret span { font-size:17px; }
#stardustDialog .sd-close { width:44px; height:44px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--sd-muted); font-size:27px; line-height:1; }
#stardustDialog .sd-close:hover { background:var(--sd-field); color:var(--sd-ink); }
#stardustDialog .sd-heading { text-align:center; padding:0 18px; }
#stardustDialog .sd-heading img { display:block; width:54px; height:54px; object-fit:contain; border-radius:50%; margin:0 auto 10px; }
#stardustDialog .sd-heading h2 { font:400 27px/1.25 Georgia,serif; color:var(--sd-ink); }
#stardustDialog .sd-heading p { margin-top:8px; color:var(--sd-muted); font-size:12px; }
#stardustDialog .sd-universe { position:relative; height:288px; margin-top:10px; }
#stardustDialog .sd-universe canvas { display:block; width:100%; height:100%; touch-action:pan-y; color:var(--sd-particle); }
#stardustDialog .sd-word-fallback { position:absolute; inset:0; display:grid; place-items:center; padding:20px; text-align:center; overflow-wrap:anywhere; font-size:32px; color:var(--sd-accent); }
#stardustDialog .sd-hint { position:absolute; bottom:8px; left:10px; right:10px; text-align:center; font-size:11px; color:var(--sd-muted); pointer-events:none; }
#stardustDialog .sd-form { margin:18px 32px 0; }
#stardustDialog .sd-form label { display:block; font-size:12px; color:var(--sd-muted); margin-bottom:8px; }
#stardustDialog .sd-input-row { display:flex; gap:10px; }
#stardustDialog .sd-form input { min-width:0; width:100%; flex:1; min-height:46px; background:var(--sd-field); border:1px solid var(--sd-line); border-radius:5px; padding:11px 14px; color:var(--sd-ink); font-size:16px; letter-spacing:1px; }
#stardustDialog .sd-create { padding:11px 18px; min-height:46px; white-space:nowrap; border:1px solid #f4d09188; border-radius:5px; background:linear-gradient(115deg,var(--sd-bright),var(--sd-gold)); color:#242019; font-size:13px; font-weight:600; }
#stardustDialog .sd-create:hover { filter:brightness(1.05); }
#stardustDialog .sd-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:12px 30px 18px; }
#stardustDialog .sd-text-action { min-height:44px; color:var(--sd-muted); background:none; border:0; padding:5px 2px; font-size:12px; }
#stardustDialog .sd-text-action:hover,#stardustDialog .sd-text-action[aria-pressed="true"] { color:var(--sd-accent); }
#stardustDialog .sd-burst span { color:var(--sd-accent); margin-right:6px; font-size:18px; }
#stardustDialog .sd-status { position:absolute; top:0; left:0; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:600px) {
  #guestHero { padding-bottom:150px; }
  #guestHero .guest-week { display:block; position:relative; padding-left:18px; }
  #guestHero .guest-week::before { position:absolute; left:0; top:.7em; width:10px; }
  .guest-mark.stardust-trigger { gap:12px; }
  .guest-mark.stardust-trigger>span:not(.stardust-secret-star) { font-size:10px; letter-spacing:2px; }
  .stardust-title { height:clamp(68px,18vw,105px); }
  dialog#stardustDialog { width:calc(100% - 20px); max-height:calc(100dvh - 20px); }
  #stardustDialog .sd-header { padding:10px 10px 0 16px; }
  #stardustDialog .sd-heading { padding:5px 12px 0; }
  #stardustDialog .sd-heading h2 { font-size:23px; }
  #stardustDialog .sd-heading img { width:48px; height:48px; }
  #stardustDialog .sd-universe { height:240px; }
  #stardustDialog .sd-form { margin:14px 18px 0; }
  #stardustDialog .sd-input-row { flex-direction:column; }
  #stardustDialog .sd-footer { padding:8px 18px 16px; }
  #stardustDialog .sd-text-action { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
  .guest-mark.stardust-trigger img { transition:none; }
}
