:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans",sans-serif;color:#24344d;--muted:#72819a;--line:#d8e6f2}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 0%,#fff0c9aa,transparent 30%),radial-gradient(circle at 85% 12%,#d0ddffaa,transparent 34%),linear-gradient(155deg,#fffdf7,#f3f9ff 44%,#e8f2ff);color:#24344d}.sky{position:fixed;inset:0;pointer-events:none;z-index:-1}.sky span{position:absolute;color:#8094bd66;font-size:28px}.sky span:nth-child(1){top:14%;left:8%}.sky span:nth-child(2){top:24%;right:8%}.sky span:nth-child(3){bottom:14%;right:22%}.topbar{min-height:82px;display:flex;justify-content:space-between;align-items:center;padding:14px 30px;border-bottom:1px solid #bfd1e0aa;background:#ffffffaa;backdrop-filter:blur(16px)}.brand{display:flex;gap:13px;align-items:center}.mark{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#dcecff);box-shadow:0 8px 25px #58759b22;color:#8c79bf}.logo{font-size:23px;font-weight:800}.tagline{font-family:Georgia,serif;color:#7b8495;font-size:12px}.actions{display:flex;gap:9px}.ghost,.primary{padding:10px 15px;border-radius:13px;font-weight:700}.ghost{background:#ffffff99;border:1px solid var(--line);color:#24344d}.primary{border:0;color:#fff;background:linear-gradient(135deg,#7faee2,#9f90d6)}.layout{max-width:1260px;margin:auto;padding:28px;display:grid;grid-template-columns:365px 1fr;gap:22px}.sidebar,.chat{background:#ffffffd4;border:1px solid #c6d8e8;border-radius:26px;box-shadow:0 22px 55px #4c668422}.sidebar{padding:22px}.eyebrow{font-size:10px;letter-spacing:.18em;color:#8a78ad;font-weight:800}.intro h1{font-family:Georgia,serif;font-size:27px;line-height:1.35;margin:8px 0}.intro p,.muted,.fineprint{color:var(--muted)}.characters{display:grid;gap:10px;margin:16px 0}.character-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border-radius:17px;border:1px solid #dfeaf4;background:#ffffffb8;color:#24344d;text-align:left}.character-card.active{border-color:#9cbbe3;background:linear-gradient(135deg,#fff,#eef5ff)}.avatar{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#fff7e7,#e7f1ff);font-size:22px}.copy{flex:1}.copy small{display:block;color:var(--muted)}.chev{font-size:24px;color:#9eabc0}.card,.usage{padding:14px;border-radius:17px;background:#ffffffa3;border:1px solid #dfebf4;margin-top:12px}.row,.usage,.meta{display:flex;justify-content:space-between;gap:10px}.row span{font-weight:800}.row strong{font-size:12px;color:#7d6ba0}.meter{height:8px;background:#e5edf5;border-radius:99px;overflow:hidden;margin:11px 0 8px}.meter div{height:100%;width:0;background:linear-gradient(90deg,#9dc6ec,#c3afe9,#e5c16c)}.meta,.usage{font-size:12px;color:var(--muted)}.memory-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.memory-chip{font-size:12px;padding:6px 9px;border-radius:99px;background:#f0f5ff;border:1px solid #d9e5f5}.fineprint{font-size:11px}.chat{min-height:735px;display:flex;flex-direction:column;overflow:hidden}.chat-header{display:flex;gap:14px;align-items:center;padding:20px 24px;border-bottom:1px solid #dce7f1}.large{width:56px;height:56px}.chat-header h2{font-family:Georgia,serif;margin:4px 0 0}.chat-header p{margin:3px 0;color:var(--muted)}.messages{flex:1;overflow-y:auto;padding:28px;display:flex;flex-direction:column;gap:12px}.welcome{text-align:center;color:#8390a4;font-family:Georgia,serif}.message{max-width:76%;padding:13px 16px;border-radius:18px;line-height:1.6}.assistant{align-self:flex-start;background:#fff;border:1px solid #e0e9f1}.user{align-self:flex-end;color:#fff;background:linear-gradient(135deg,#80aede,#9b8dd0)}.error{background:#fff0f0;color:#9a4545}.composer{display:flex;gap:11px;padding:17px;border-top:1px solid #dce7f1}.composer textarea{flex:1;resize:none;min-height:54px;border:1px solid #d3e0eb;border-radius:16px;padding:15px}.composer button,dialog button{border:0;border-radius:14px;background:linear-gradient(135deg,#7faee2,#9c8ed1);color:#fff;padding:0 22px;font-weight:800}dialog{width:min(860px,92vw);border:1px solid #d4e1ec;border-radius:24px;background:#fbfdff;color:#24344d;padding:27px}.close{float:right;background:transparent!important;color:#65758b!important;font-size:25px}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plans article{background:#fff;border:1px solid #dfe9f2;border-radius:18px;padding:20px}.plans .featured{border-color:#aabbe4}.price{font-size:25px;font-weight:800;margin:12px 0}.plans button,.profile-form button{padding:11px 14px}.profile-form{display:grid;gap:10px}.profile-form input{padding:13px;border-radius:12px;border:1px solid #d6e2ec}@media(max-width:820px){.tagline{display:none}.layout{grid-template-columns:1fr;padding:12px}.characters{grid-template-columns:repeat(3,1fr)}.copy,.chev{display:none}.plans{grid-template-columns:1fr}.message{max-width:88%}}


.opening-screen{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  overflow:hidden;
  transition:opacity .6s ease,visibility .6s ease;
  background:
    radial-gradient(circle at 50% 22%,rgba(255,244,211,.96),transparent 30%),
    radial-gradient(circle at 78% 18%,rgba(213,224,255,.9),transparent 32%),
    linear-gradient(155deg,#fffdf7,#f1f8ff 54%,#e6f0ff);
}
.opening-screen.hidden{
  opacity:0;
  visibility:hidden;
}
.opening-content{
  position:relative;
  text-align:center;
  padding:36px;
  z-index:2;
}
.opening-symbol{
  font-size:34px;
  color:#ab91cf;
  animation:openingPulse 2.6s ease-in-out infinite;
}
.opening-logo{
  font-family:Georgia,"Times New Roman",serif;
  font-size:58px;
  font-weight:700;
  color:#30425e;
  letter-spacing:.025em;
  margin:14px 0 10px;
}
.opening-tagline{
  font-family:Georgia,"Times New Roman",serif;
  color:#64738a;
  font-size:18px;
  line-height:1.65;
  margin:0;
}
.opening-message{
  color:#8c7da7;
  margin:25px 0 22px;
  font-size:14px;
}
.journey-button,.return-button{
  display:block;
  margin:10px auto 0;
  border-radius:999px;
  padding:14px 28px;
  font-weight:800;
}
.journey-button{
  border:0;
  color:white;
  background:linear-gradient(135deg,#78aee3,#9e8fd2);
  box-shadow:0 14px 34px rgba(105,127,165,.24);
}
.return-button{
  border:0;
  background:transparent;
  color:#74839a;
  padding:9px 18px;
  font-weight:600;
}
.opening-orbit{
  position:absolute;
  border:1px solid rgba(150,171,208,.24);
  border-radius:50%;
  animation:orbitRotate 18s linear infinite;
}
.orbit-one{width:480px;height:480px}
.orbit-two{
  width:720px;
  height:720px;
  animation-duration:28s;
  animation-direction:reverse;
}
.shooting-star{
  position:absolute;
  width:130px;
  height:2px;
  top:24%;
  left:-160px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(159,137,205,.7),
    transparent
  );
  transform:rotate(-18deg);
  animation:shoot 5.5s ease-in-out infinite 1s;
}
.journey-dialog{
  width:min(680px,94vw);
}
.journey-form{
  gap:12px;
}
.journey-form label{
  font-size:12px;
  font-weight:800;
  color:#4f6078;
}
.journey-form label span{
  font-weight:500;
  color:#94a0b1;
}
.journey-form input,.journey-form select{
  width:100%;
  padding:13px;
  border-radius:12px;
  border:1px solid #d6e2ec;
  background:white;
  color:var(--ink);
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.sun-sign-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:13px 14px;
  border:1px solid #dce7f2;
  border-radius:14px;
  background:linear-gradient(135deg,#fffdf7,#eef6ff);
}
.sun-sign-preview span{
  color:#7a8799;
  font-size:12px;
}
.sun-sign-preview strong{
  color:#78679c;
}
@keyframes openingPulse{
  50%{transform:scale(1.15);opacity:.65}
}
@keyframes orbitRotate{
  to{transform:rotate(360deg)}
}
@keyframes shoot{
  0%,58%{left:-160px;opacity:0}
  62%{opacity:1}
  82%{left:110%;opacity:0}
  100%{left:110%;opacity:0}
}
@media(max-width:620px){
  .opening-logo{font-size:44px}
  .opening-tagline{font-size:16px}
  .form-grid{grid-template-columns:1fr}
}


.language-control{
  display:flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid #d7e4ef;
  border-radius:13px;
  background:rgba(255,255,255,.72);
}
.language-control select{
  border:0;
  outline:0;
  background:transparent;
  color:#43546d;
  font-weight:700;
}
.characters{
  max-height:460px;
  overflow-y:auto;
  padding-right:4px;
}
.character-card .sign-label{
  display:block;
  color:#927ead;
  font-size:10px;
  font-weight:800;
  margin-top:3px;
}
@media(min-width:1100px){
  .characters{
    grid-template-columns:1fr 1fr;
  }
  .character-card{
    min-width:0;
  }
  .character-card .copy small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}


/* Starbond Commit10 Relationship UI */

.relationship-card{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 85% 0%,
      #e9ddff99,
      transparent 44%
    ),
    linear-gradient(
      145deg,
      #ffffffdc,
      #f5f8ffdc
    );
}

.relationship-card::before{
  content:"";
  position:absolute;
  width:95px;
  height:95px;
  right:-38px;
  top:-42px;
  border:1px solid #bca9df55;
  border-radius:50%;
}

.relationship-score-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:13px;
}

.relationship-score-row>div{
  padding:10px;
  border:1px solid #dce7f3;
  border-radius:13px;
  background:#ffffffa8;
}

.relationship-score-row small{
  display:block;
  margin-bottom:4px;
  color:var(--muted);
  font-size:10px;
}

.relationship-score-row strong{
  color:#76669b;
  font-size:14px;
}

.relationship-timeline{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:18px 4px 12px;
}

.relationship-timeline::before{
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  height:2px;
  background:#dce5ef;
}

.relationship-timeline span{
  position:relative;
  z-index:1;
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#edf1f7;
  color:#b6c0ce;
  font-size:9px;
  transition:
    transform .3s ease,
    box-shadow .3s ease,
    background .3s ease;
}

.relationship-timeline span.reached{
  color:#fff;
  background:
    linear-gradient(
      135deg,
      #91bce7,
      #aa91dc
    );
}

.relationship-timeline span.current{
  transform:scale(1.35);
  box-shadow:
    0 0 0 5px #a993d522,
    0 0 18px #9176c866;
}

.relationship-voice{
  margin:8px 0 0;
  font-size:11px;
  line-height:1.55;
}

.relationship-event-feed{
  display:grid;
  gap:7px;
  margin-top:10px;
}

.destiny-event-card{
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid #e6d9a8;
  border-radius:12px;
  background:
    linear-gradient(
      135deg,
      #fffdf4,
      #fff8dd
    );
  animation:
    destinyEventArrival .65s ease both;
}

.destiny-event-card span{
  color:#d3a738;
}

.destiny-event-card strong{
  font-size:11px;
  color:#74633c;
}

.relationship-celebration{
  position:fixed;
  z-index:1500;
  top:96px;
  left:50%;
  width:min(390px,calc(100vw - 30px));
  padding:18px 20px;
  border:1px solid #d8c8f0;
  border-radius:20px;
  background:#fffffff2;
  box-shadow:
    0 24px 60px #4f47703d;
  backdrop-filter:blur(18px);
  text-align:center;
  opacity:0;
  visibility:hidden;
  transform:
    translate(-50%,-18px)
    scale(.96);
  transition:
    opacity .3s ease,
    transform .3s ease,
    visibility .3s ease;
}

.relationship-celebration.visible{
  opacity:1;
  visibility:visible;
  transform:
    translate(-50%,0)
    scale(1);
}

.relationship-celebration-star{
  margin-bottom:5px;
  color:#a17ecb;
  font-size:27px;
  animation:
    relationshipStarPulse
    1.4s ease infinite;
}

.relationship-celebration strong,
.relationship-celebration span{
  display:block;
}

.relationship-celebration strong{
  color:#62517e;
  font-family:Georgia,serif;
  font-size:17px;
}

.relationship-celebration span{
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}

@keyframes destinyEventArrival{
  from{
    opacity:0;
    transform:translateY(7px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes relationshipStarPulse{
  0%,100%{
    transform:scale(1);
    opacity:.75;
  }
  50%{
    transform:scale(1.18);
    opacity:1;
  }
}

@media(max-width:820px){
  .relationship-celebration{
    top:72px;
  }
}

/* Starbond Commit11 Proactive Guardian */

.proactive-guardian-message{
  align-self:flex-start;
  display:flex;
  gap:12px;
  width:min(520px,88%);
  padding:15px 17px;
  border:1px solid #d9cbea;
  border-radius:
    19px 19px 19px 7px;
  background:
    radial-gradient(
      circle at 90% 0%,
      #f2e8ff,
      transparent 45%
    ),
    linear-gradient(
      145deg,
      #fff,
      #f8f5ff
    );
  box-shadow:
    0 12px 30px #62517d17;
  animation:
    proactiveGuardianArrival
    .7s ease both;
}

.proactive-guardian-symbol{
  flex:0 0 auto;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:
    linear-gradient(
      135deg,
      #d8c6ee,
      #9abfe7
    );
  color:#fff;
  box-shadow:
    0 0 18px #a892d466;
}

.proactive-guardian-message strong{
  display:block;
  color:#705b8e;
  font-family:Georgia,serif;
  font-size:13px;
}

.proactive-guardian-message p{
  margin:6px 0 0;
  color:#52617a;
  line-height:1.65;
  font-size:13px;
}

@keyframes proactiveGuardianArrival{
  from{
    opacity:0;
    transform:
      translateY(10px)
      scale(.98);
  }
  to{
    opacity:1;
    transform:
      translateY(0)
      scale(1);
  }
}

/* Starbond Commit12 Daily Bond */

.daily-bond-arrival{
  align-self:center;
  display:flex;
  gap:13px;
  width:min(560px,92%);
  margin:8px auto;
  padding:16px 18px;
  border:1px solid #eadfc8;
  border-radius:20px;
  background:
    radial-gradient(
      circle at 10% 0%,
      #fff3cf,
      transparent 42%
    ),
    linear-gradient(
      145deg,
      #fffdf8,
      #f8f5ff
    );
  box-shadow:
    0 14px 34px #6c5e7e17;
  animation:
    dailyBondArrival
    .75s ease both;
}

.daily-bond-arrival-icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:
    linear-gradient(
      135deg,
      #ead49c,
      #bea9df
    );
  color:#fff;
  font-size:19px;
  box-shadow:
    0 0 20px #d8bd8266;
}

.daily-bond-arrival strong{
  display:block;
  color:#725d82;
  font-family:Georgia,serif;
  font-size:14px;
  letter-spacing:.02em;
}

.daily-bond-arrival p{
  margin:6px 0 10px;
  color:#566079;
  font-size:13px;
  line-height:1.65;
}

.daily-bond-stats{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.daily-bond-stats span{
  padding:5px 9px;
  border:1px solid #e2d8ec;
  border-radius:999px;
  background:#ffffffb8;
  color:#806d96;
  font-size:11px;
}

@keyframes dailyBondArrival{
  from{
    opacity:0;
    transform:
      translateY(-8px)
      scale(.98);
  }
  to{
    opacity:1;
    transform:
      translateY(0)
      scale(1);
  }
}

/* Starbond Commit13 Guardian Story */

.guardian-story-panel{
  width:min(920px,calc(100% - 28px));
  margin:18px auto;
  padding:22px;
  border:1px solid #ddd3eb;
  border-radius:25px;
  background:
    radial-gradient(
      circle at 100% 0%,
      #eee4ff,
      transparent 40%
    ),
    radial-gradient(
      circle at 0% 100%,
      #fff2d5,
      transparent 35%
    ),
    linear-gradient(
      145deg,
      #fff,
      #faf8ff
    );
  box-shadow:
    0 18px 46px #62527717;
}

.guardian-story-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.guardian-story-eyebrow{
  color:#a489ba;
  font-size:10px;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.guardian-story-header h3{
  margin:5px 0 4px;
  color:#594c70;
  font-family:Georgia,serif;
  font-size:21px;
  font-weight:500;
}

.guardian-story-header p{
  margin:0;
  color:#8a7c99;
  font-size:12px;
}

.guardian-story-counter{
  display:grid;
  place-items:center;
  min-width:62px;
  min-height:42px;
  padding:5px 12px;
  border:1px solid #ded3eb;
  border-radius:999px;
  background:#ffffffb8;
  color:#725e8b;
  font-family:Georgia,serif;
  font-size:14px;
}

.guardian-story-progress{
  width:100%;
  height:7px;
  margin-top:18px;
  overflow:hidden;
  border-radius:999px;
  background:#e9e3f0;
}

.guardian-story-progress-bar{
  height:100%;
  min-width:2%;
  border-radius:inherit;
  background:
    linear-gradient(
      90deg,
      #d6b26d,
      #b498d2,
      #82afd7
    );
  transition:width .8s ease;
}

.guardian-story-progress-caption{
  margin:7px 0 19px;
  color:#8d8198;
  font-size:11px;
  text-align:right;
}

.guardian-story-panel h4{
  margin:18px 0 10px;
  color:#6b5a80;
  font-family:Georgia,serif;
  font-size:14px;
  font-weight:500;
}

.guardian-story-chapters{
  display:grid;
  grid-template-columns:
    repeat(
      auto-fit,
      minmax(235px,1fr)
    );
  gap:10px;
}

.guardian-story-chapter{
  display:flex;
  gap:12px;
  min-height:105px;
  padding:14px;
  border-radius:17px;
  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.guardian-story-chapter.is-unlocked{
  border:1px solid #ded1e9;
  background:#ffffffd9;
  box-shadow:
    0 8px 22px #6556760c;
}

.guardian-story-chapter.is-unlocked:hover{
  transform:translateY(-2px);
  box-shadow:
    0 12px 28px #65567617;
}

.guardian-story-chapter.is-locked{
  border:1px dashed #d8d2dc;
  background:#f5f3f6a8;
  opacity:.67;
}

.guardian-story-chapter-number{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border-radius:50%;
  background:
    linear-gradient(
      135deg,
      #ead7a4,
      #c5b0dc
    );
  color:#fff;
  font-family:Georgia,serif;
  font-size:12px;
}

.guardian-story-chapter.is-locked
.guardian-story-chapter-number{
  background:#ccc7d0;
}

.guardian-story-chapter strong{
  display:block;
  color:#665674;
  font-family:Georgia,serif;
  font-size:13px;
}

.guardian-story-chapter p{
  margin:6px 0 0;
  color:#697084;
  font-size:11px;
  line-height:1.6;
}

.guardian-achievement-list{
  display:grid;
  grid-template-columns:
    repeat(
      auto-fit,
      minmax(180px,1fr)
    );
  gap:9px;
}

.guardian-achievement{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border-radius:15px;
}

.guardian-achievement.is-unlocked{
  border:1px solid #e2d5b8;
  background:
    linear-gradient(
      145deg,
      #fffdf7,
      #f9f5ff
    );
}

.guardian-achievement.is-locked{
  border:1px dashed #d6d2da;
  background:#f5f3f6;
  opacity:.58;
}

.guardian-achievement-icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:
    linear-gradient(
      135deg,
      #ebcd82,
      #a994cc
    );
  color:#fff;
  font-size:16px;
}

.guardian-achievement.is-locked
.guardian-achievement-icon{
  background:#c9c5cc;
}

.guardian-achievement strong{
  display:block;
  color:#665674;
  font-size:12px;
}

.guardian-achievement p{
  margin:4px 0 0;
  color:#7c7585;
  font-size:10px;
  line-height:1.45;
}

@media(max-width:640px){
  .guardian-story-panel{
    padding:17px;
  }

  .guardian-story-chapters{
    grid-template-columns:1fr;
  }

  .guardian-achievement-list{
    grid-template-columns:1fr 1fr;
  }
}

/* Starbond Commit14 Beta Safety */

.starbond-safety-button{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:8500;
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  border:1px solid #ded4ea;
  border-radius:50%;
  background:
    linear-gradient(
      145deg,
      #fffdf8,
      #f0eaff
    );
  color:#77658d;
  font-family:Georgia,serif;
  font-size:18px;
  cursor:pointer;
  box-shadow:
    0 10px 28px #66547b24;
  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.starbond-safety-button:hover{
  transform:translateY(-2px);
  box-shadow:
    0 14px 33px #66547b31;
}

.starbond-safety-overlay{
  position:fixed;
  inset:0;
  z-index:9000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:#3830418c;
  backdrop-filter:blur(8px);
  opacity:0;
  visibility:hidden;
  transition:
    opacity .25s ease,
    visibility .25s ease;
}

.starbond-safety-overlay.is-open{
  opacity:1;
  visibility:visible;
}

.starbond-safety-panel{
  position:relative;
  width:min(660px,100%);
  max-height:min(82vh,800px);
  overflow:auto;
  padding:29px;
  border:1px solid #e1d8eb;
  border-radius:28px;
  background:
    radial-gradient(
      circle at 100% 0%,
      #eee4ff,
      transparent 38%
    ),
    radial-gradient(
      circle at 0% 100%,
      #fff1ce,
      transparent 35%
    ),
    #fffdfb;
  box-shadow:
    0 28px 80px #271e3266;
  transform:
    translateY(12px)
    scale(.98);
  transition:transform .25s ease;
}

.starbond-safety-overlay.is-open
.starbond-safety-panel{
  transform:
    translateY(0)
    scale(1);
}

.starbond-safety-close{
  position:absolute;
  top:15px;
  right:15px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid #ded5e6;
  border-radius:50%;
  background:#ffffffc9;
  color:#786b83;
  font-size:21px;
  cursor:pointer;
}

.starbond-safety-brand{
  display:block;
  color:#a18bb5;
  font-size:10px;
  letter-spacing:.18em;
}

.starbond-safety-panel h2{
  margin:7px 0 5px;
  color:#594b6a;
  font-family:Georgia,serif;
  font-size:25px;
  font-weight:500;
}

.starbond-safety-subtitle{
  margin:0 45px 22px 0;
  color:#81778a;
  font-size:12px;
  line-height:1.6;
}

.starbond-legal-section{
  margin-top:16px;
  padding:17px;
  border:1px solid #e5ddea;
  border-radius:18px;
  background:#ffffffb8;
}

.starbond-legal-section h3,
.starbond-data-reset h3{
  margin:0 0 10px;
  color:#675777;
  font-family:Georgia,serif;
  font-size:15px;
  font-weight:500;
}

.starbond-legal-section ul{
  margin:0;
  padding-left:18px;
}

.starbond-legal-section li{
  margin:7px 0;
  color:#626a7a;
  font-size:12px;
  line-height:1.65;
}

.starbond-data-reset{
  margin-top:21px;
  padding:17px;
  border:1px solid #ead6d4;
  border-radius:18px;
  background:#fff9f7;
}

.starbond-data-reset p{
  margin:0 0 13px;
  color:#7c6a6a;
  font-size:11px;
  line-height:1.6;
}

.starbond-reset-button{
  padding:10px 15px;
  border:1px solid #d9aaa5;
  border-radius:999px;
  background:#fff;
  color:#a25e58;
  font-size:11px;
  cursor:pointer;
}

.starbond-reset-button:hover{
  background:#fff0ee;
}

.starbond-safety-loading{
  padding:50px 0;
  color:#83758e;
  text-align:center;
}

.starbond-error-notice{
  position:fixed;
  top:18px;
  left:50%;
  z-index:10000;
  width:min(
    440px,
    calc(100% - 30px)
  );
  padding:14px 44px 14px 16px;
  border:1px solid #ebcac3;
  border-radius:17px;
  background:#fffaf8f2;
  box-shadow:
    0 16px 42px #5e41402b;
  opacity:0;
  pointer-events:none;
  transform:
    translate(-50%,-12px);
  transition:
    opacity .25s ease,
    transform .25s ease;
}

.starbond-error-notice.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:
    translate(-50%,0);
}

.starbond-error-notice strong{
  display:block;
  color:#965f58;
  font-size:12px;
}

.starbond-error-notice p{
  margin:5px 0 0;
  color:#765f5c;
  font-size:11px;
  line-height:1.5;
}

.starbond-error-notice button{
  position:absolute;
  top:8px;
  right:10px;
  border:0;
  background:transparent;
  color:#9b736e;
  font-size:20px;
  cursor:pointer;
}

html[data-starbond-health="degraded"]::before{
  content:"";
  position:fixed;
  top:0;
  left:0;
  z-index:9999;
  width:100%;
  height:3px;
  background:
    linear-gradient(
      90deg,
      #d09b71,
      #d07070
    );
}

@media(max-width:640px){
  .starbond-safety-button{
    right:12px;
    bottom:12px;
  }

  .starbond-safety-panel{
    padding:23px 17px;
    border-radius:22px;
  }
}

/* Starbond Commit15 Authentication */

html.starbond-auth-required{
  overflow:hidden;
}

.starbond-auth-overlay{
  position:fixed;
  inset:0;
  z-index:12000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:
    radial-gradient(
      circle at 20% 15%,
      #fff0c9,
      transparent 32%
    ),
    radial-gradient(
      circle at 85% 10%,
      #ddd0ff,
      transparent 35%
    ),
    linear-gradient(
      145deg,
      #fdf9f1,
      #eae4f7
    );
  opacity:0;
  visibility:hidden;
  transition:
    opacity .3s ease,
    visibility .3s ease;
}

.starbond-auth-overlay.is-open{
  opacity:1;
  visibility:visible;
}

.starbond-auth-card{
  position:relative;
  width:min(430px,100%);
  padding:34px;
  overflow:hidden;
  border:1px solid #e1d5e9;
  border-radius:30px;
  background:#fffdfbe8;
  backdrop-filter:blur(18px);
  box-shadow:
    0 28px 80px #493b5a38;
  transform:
    translateY(14px)
    scale(.98);
  transition:transform .3s ease;
}

.starbond-auth-overlay.is-open
.starbond-auth-card{
  transform:
    translateY(0)
    scale(1);
}

.starbond-auth-celestial{
  position:absolute;
  top:20px;
  right:24px;
  color:#c4a972;
  font-size:17px;
  letter-spacing:.2em;
}

.starbond-auth-brand{
  color:#a18cb4;
  font-size:10px;
  letter-spacing:.22em;
}

.starbond-auth-card h2{
  margin:8px 0 7px;
  color:#58496b;
  font-family:Georgia,serif;
  font-size:28px;
  font-weight:500;
}

.starbond-auth-subtitle{
  margin:0 0 22px;
  color:#7f7589;
  font-size:12px;
  line-height:1.65;
}

.starbond-auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  padding:4px;
  border-radius:999px;
  background:#eee8f2;
}

.starbond-auth-tabs button{
  padding:10px 12px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#81758b;
  font-size:11px;
  cursor:pointer;
}

.starbond-auth-tabs button.is-active{
  background:#fff;
  color:#665374;
  box-shadow:
    0 4px 14px #63547016;
}

.starbond-auth-form{
  display:grid;
  gap:13px;
  margin-top:19px;
}

.starbond-auth-form label{
  display:grid;
  gap:6px;
}

.starbond-auth-form label[hidden]{
  display:none;
}

.starbond-auth-form label > span{
  color:#6c6075;
  font-size:11px;
}

.starbond-auth-form input{
  width:100%;
  box-sizing:border-box;
  padding:12px 14px;
  border:1px solid #ddd4e4;
  border-radius:14px;
  outline:0;
  background:#ffffffd9;
  color:#554d5d;
  font-size:13px;
  transition:
    border-color .2s ease,
    box-shadow .2s ease;
}

.starbond-auth-form input:focus{
  border-color:#b9a0ce;
  box-shadow:
    0 0 0 3px #bba3d11a;
}

.starbond-auth-form small{
  color:#9a909f;
  font-size:9px;
}

.starbond-auth-error{
  min-height:17px;
  margin:0;
  color:#ae625c;
  font-size:10px;
  line-height:1.5;
}

.starbond-auth-submit{
  padding:12px 17px;
  border:1px solid #ad96c3;
  border-radius:999px;
  background:
    linear-gradient(
      135deg,
      #816d99,
      #a88bb7
    );
  color:#fff;
  font-size:12px;
  cursor:pointer;
  box-shadow:
    0 10px 22px #7561872b;
}

.starbond-auth-submit:disabled{
  cursor:wait;
  opacity:.65;
}

.starbond-account-button{
  position:fixed;
  top:16px;
  right:17px;
  z-index:8400;
  display:grid;
  place-items:center;
  width:41px;
  height:41px;
  border:1px solid #d9cce4;
  border-radius:50%;
  background:
    linear-gradient(
      145deg,
      #fff8dc,
      #ddcff1
    );
  color:#665477;
  font-family:Georgia,serif;
  font-size:15px;
  cursor:pointer;
  box-shadow:
    0 9px 24px #65537722;
}

@media(max-width:640px){
  .starbond-auth-card{
    padding:28px 20px;
    border-radius:24px;
  }

  .starbond-auth-card h2{
    font-size:24px;
  }

  .starbond-account-button{
    top:11px;
    right:11px;
  }
}

