
/* Hammy Focus House v20 — Cloud accounts */
.cloud-heading,.cloud-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.cloud-chip-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.cloud-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border:2px solid var(--line);border-radius:999px;background:var(--soft);font-size:.8rem;font-weight:900}
.cloud-chip.online{background:#c9f0d1}.cloud-chip.offline{background:#ffd5dc}.cloud-chip.syncing{background:#ffe9a8}.cloud-chip.conflict{background:#ffd08c}
.cloud-warning{margin-top:11px;padding:11px 13px;border:3px solid #9a7422;border-radius:14px;background:#fff1bd;color:#563f12;font-weight:800}
.cloud-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.cloud-card{border:3px solid var(--line);border-radius:18px;padding:13px;background:var(--panel);box-shadow:0 4px 0 rgba(73,57,81,.12)}
.cloud-label{display:grid;gap:6px;margin-top:10px;font-weight:900}
.cloud-label input{width:100%;padding:11px;border:3px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);font:inherit;text-transform:uppercase}
.cloud-identity{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center;margin-top:11px;padding:10px;border:2px solid var(--line);border-radius:13px;background:var(--soft)}
.cloud-identity span,.cloud-identity strong{display:block}.cloud-identity strong{margin-top:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;overflow-wrap:anywhere}
.cloud-identity.recovery{background:#fff1bd}
.cloud-secret-note{margin-top:8px;font-size:.78rem;color:#6f5d36}
.cloud-sync-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}
.cloud-sync-status div{padding:8px;border:2px solid var(--line);border-radius:11px;background:var(--soft);text-align:center}
.cloud-sync-status span,.cloud-sync-status strong{display:block}.cloud-sync-status span{font-size:.7rem}.cloud-sync-status strong{margin-top:3px}
.cloud-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.cloud-wide{width:100%;margin-top:11px}
.cloud-conflict{margin-top:12px;border-color:#9a7422;background:#fff8dd}
.cloud-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}
.cloud-compare div{padding:11px;border:2px solid var(--line);border-radius:13px;background:var(--panel)}
.cloud-compare strong,.cloud-compare span{display:block}.cloud-compare span{margin-top:5px;font-size:.84rem}
.cloud-danger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:11px}
.cloud-danger-grid>div{padding:11px;border:2px solid var(--line);border-radius:13px;background:var(--soft)}
.cloud-danger-grid button{margin-top:9px}
.cloud-toast{position:fixed;left:50%;bottom:22px;z-index:12000;transform:translateX(-50%);max-width:min(92vw,560px);padding:11px 14px;border:3px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 7px 0 rgba(73,57,81,.22);font-weight:900;text-align:center}
.cloud-toast.error{background:#ffd9df}.cloud-toast.success{background:#d5f0dd}
.cloud-db-status{margin-top:8px;font-size:.78rem}
.reaction-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.reaction-button{display:flex;align-items:center;gap:5px;padding:8px 10px;border:2px solid var(--line);border-radius:999px;background:var(--panel);font-weight:900}
.reaction-button.selected{background:var(--accent);color:#fff}
.profile-safety-panel{margin-top:12px;padding:11px;border:2px dashed var(--line);border-radius:14px;background:var(--soft)}
.profile-safety-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.profile-safety-actions select{flex:1;min-width:170px;padding:9px;border:2px solid var(--line);border-radius:11px;background:var(--panel);color:var(--ink);font:inherit}
.admin-link-note{font-size:.75rem;margin-top:8px}
@media(max-width:720px){
 .cloud-grid,.cloud-danger-grid{grid-template-columns:1fr}
 .cloud-sync-status{grid-template-columns:1fr}
 .cloud-compare{grid-template-columns:1fr}
}


/* Hammy Focus House v21 — Reward Codes */
.reward-code-card{
  background:linear-gradient(135deg,var(--panel),var(--soft));
  overflow:hidden;
  position:relative
}
.reward-code-card:after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-55px;
  bottom:-70px;
  border:3px dashed rgba(73,57,81,.2);
  border-radius:50%;
  pointer-events:none
}
.reward-code-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px
}
.reward-gift-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border:3px solid var(--line);
  border-radius:16px;
  background:#fff1bd;
  font-size:1.8rem;
  box-shadow:0 4px 0 rgba(73,57,81,.15)
}
.reward-code-entry{
  display:grid;
  grid-template-columns:1fr auto;
  gap:9px;
  align-items:end;
  margin-top:10px
}
.reward-code-entry .cloud-label{margin-top:0}
#rewardCodeInput{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-weight:900;
  letter-spacing:.09em
}
.reward-code-message{
  margin-top:10px;
  padding:10px 12px;
  border:2px dashed var(--line);
  border-radius:12px;
  background:var(--panel);
  font-weight:800
}
.reward-code-message.success{background:#d5f0dd}
.reward-code-message.error{background:#ffd9df}
.reward-code-message.working{background:#fff1bd}
@media(max-width:620px){
  .reward-code-entry{grid-template-columns:1fr}
  .reward-code-entry button{width:100%}
}


/* Hammy Focus House v22 — Top Secret Admin */
.secret-build-trigger{
  font:inherit;
  color:var(--ink);
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none
}
.secret-build-trigger:active{transform:translateY(1px)}
.secret-admin-card{
  border-color:#4d385f;
  background:
    radial-gradient(circle at 92% 12%,rgba(255,216,95,.23),transparent 130px),
    linear-gradient(135deg,#33273e,#5c4270);
  color:#fff;
  position:relative;
  overflow:hidden
}
.secret-admin-card .muted{color:#eadff2}
.secret-admin-card .cloud-label input{
  background:#fff;
  color:#30243a
}
.secret-admin-heading{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center
}
.secret-lock{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:62px;
  height:62px;
  border:3px solid #f6d96f;
  border-radius:18px;
  background:#211a29;
  font-size:2rem;
  box-shadow:0 0 0 5px rgba(246,217,111,.12)
}
.secret-admin-message{
  margin-top:10px;
  padding:10px 12px;
  border:2px dashed #d9c5e5;
  border-radius:12px;
  background:rgba(255,255,255,.09);
  font-weight:900
}
.secret-admin-message.success{background:#275c3d}
.secret-admin-message.error{background:#7d2d3d}
.secret-admin-message.working{background:#6c5522}


/* Hammy Focus House v23 — Live events and exclusive collection */
.live-event-card{
  background:
    radial-gradient(circle at 90% 12%,rgba(255,235,151,.55),transparent 150px),
    linear-gradient(135deg,#fff5c9,#f1e1ff);
  border-color:#755692
}
.live-event-heading,.exclusive-collection-heading{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap
}
.live-event-kicker{
  display:inline-block;margin-bottom:4px;padding:4px 8px;border:2px solid var(--line);
  border-radius:999px;background:#fff;font-size:.7rem;font-weight:1000;letter-spacing:.08em
}
.live-event-icon{
  display:grid;place-items:center;width:68px;height:68px;border:3px solid var(--line);
  border-radius:20px;background:#fff;font-size:2rem;box-shadow:0 5px 0 rgba(73,57,81,.14)
}
.live-event-details{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px
}
.live-event-details>div{
  padding:10px;border:2px solid var(--line);border-radius:13px;background:rgba(255,255,255,.7)
}
.live-event-details span,.live-event-details strong{display:block}
.live-event-details span{font-size:.75rem}.live-event-details strong{margin-top:4px}
.live-event-message{
  margin-top:9px;padding:9px 11px;border:2px dashed var(--line);border-radius:11px;
  background:rgba(255,255,255,.6);font-weight:800
}
.exclusive-count{
  display:inline-flex;gap:5px;align-items:center;padding:6px 10px;border:2px solid var(--line);
  border-radius:999px;background:var(--soft);font-weight:800
}
.exclusive-collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.exclusive-item{
  display:grid;grid-template-columns:52px 1fr auto;gap:9px;align-items:center;
  padding:10px;border:2px solid var(--line);border-radius:14px;background:var(--soft)
}
.exclusive-item.equipped{background:#fff1bd;box-shadow:0 0 0 4px rgba(240,198,79,.18)}
.exclusive-item-icon{
  display:grid;place-items:center;width:52px;height:52px;border:2px solid var(--line);
  border-radius:14px;background:var(--panel);font-size:1.65rem
}
.exclusive-item p{margin:4px 0 0;font-size:.78rem}
.exclusive-owned-label{
  padding:6px 8px;border:2px solid var(--line);border-radius:999px;background:var(--panel);
  font-size:.72rem;font-weight:900
}
.exclusive-empty{
  grid-column:1/-1;padding:18px;border:2px dashed var(--line);border-radius:13px;
  text-align:center;background:var(--soft)
}
.admin-exclusive-visual{
  position:absolute;
  inset:0;
  z-index:96;
  display:block;
  pointer-events:none;
  overflow:visible;
}
.admin-exclusive-room-visual{
  position:absolute;
  left:50%;
  bottom:42px;
  width:270px;
  height:300px;
  transform:translateX(-50%);
  z-index:18;
  pointer-events:none;
  overflow:visible;
}
.admin-exclusive-visual.hidden,
.admin-exclusive-room-visual.hidden{display:none!important}

/* Solar Crown */
.exclusive-crown-gem{
  position:absolute;
  left:50%;
  top:-34px;
  transform:translateX(-50%);
  color:#ffd857;
  font-size:3.15rem;
  line-height:1;
  text-shadow:
    0 0 4px #fff7a8,
    0 0 12px #ffcc3b,
    0 4px 0 #8d6414;
  animation:exclusiveCrownFloat 1.8s ease-in-out infinite;
}

/* Aurora Aura */
.exclusive-aura-ring{
  position:absolute;
  left:50%;
  top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%);
  mix-blend-mode:screen;
}
.exclusive-aura-ring.ring-a{
  width:245px;
  height:272px;
  border:12px solid rgba(105,239,224,.46);
  box-shadow:
    0 0 18px #7cefe5,
    inset 0 0 22px #c39cff;
  animation:exclusiveAuraSpin 4.2s linear infinite;
}
.exclusive-aura-ring.ring-b{
  width:275px;
  height:225px;
  border:9px dashed rgba(211,143,255,.55);
  box-shadow:0 0 20px #a875ff;
  animation:exclusiveAuraSpinReverse 5.2s linear infinite;
}
.exclusive-aura-spark{
  position:absolute;
  color:#eaffff;
  font-size:1.8rem;
  text-shadow:0 0 8px #69ffe5,0 0 14px #b880ff;
  animation:exclusiveSparkPulse 1.25s ease-in-out infinite;
}
.exclusive-aura-spark.s1{left:12%;top:24%}
.exclusive-aura-spark.s2{right:8%;top:47%;animation-delay:.35s}
.exclusive-aura-spark.s3{left:42%;bottom:2%;animation-delay:.7s}

/* Star Trail */
.exclusive-orbit-star{
  position:absolute;
  color:#ffe167;
  font-size:2rem;
  text-shadow:0 0 7px white,0 0 13px #ffc93f;
  transform-origin:50% 50%;
}
.exclusive-orbit-star.st1{left:5%;top:36%;animation:exclusiveStarBob 1.25s ease-in-out infinite}
.exclusive-orbit-star.st2{right:4%;top:18%;animation:exclusiveStarBob 1.5s ease-in-out .25s infinite}
.exclusive-orbit-star.st3{right:12%;bottom:12%;animation:exclusiveStarBob 1.15s ease-in-out .5s infinite}
.exclusive-orbit-star.st4{left:19%;bottom:4%;animation:exclusiveStarBob 1.4s ease-in-out .75s infinite}

/* Crystal Badge */
.exclusive-crystal-badge{
  position:absolute;
  left:50%;
  top:58%;
  transform:translate(-50%,-50%) rotate(45deg);
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:4px solid #4a4d80;
  border-radius:9px;
  background:linear-gradient(135deg,#f1ffff,#67dff0 48%,#9868ea);
  color:#fff;
  font-size:1.15rem;
  text-shadow:0 0 6px white;
  box-shadow:0 0 13px #70e7f0,0 0 22px #a46cf0;
  animation:exclusiveBadgeShine 1.8s ease-in-out infinite;
}

/* Golden Trophy */
.exclusive-room-trophy{
  position:absolute;
  right:-14px;
  bottom:0;
  display:grid;
  place-items:center;
  width:92px;
  height:100px;
  font-size:4.4rem;
  filter:drop-shadow(0 8px 4px rgba(70,45,20,.26));
  animation:exclusiveTrophyBounce 2s ease-in-out infinite;
}
.exclusive-trophy-shine{
  position:absolute;
  right:10px;
  bottom:92px;
  color:#fff7a2;
  font-size:2rem;
  text-shadow:0 0 8px #ffd94f;
  animation:exclusiveSparkPulse 1s ease-in-out infinite;
}

/* Neon Frame */
.exclusive-neon-frame{
  position:absolute;
  left:50%;
  top:50%;
  width:245px;
  height:282px;
  transform:translate(-50%,-50%);
  border:8px solid #70f9e9;
  border-radius:46%;
  box-shadow:
    0 0 8px #70f9e9,
    0 0 20px #9f6dff,
    inset 0 0 14px #ff73ca;
  animation:exclusiveFrameColor 2.2s linear infinite;
}
.exclusive-neon-dot{
  position:absolute;
  width:15px;
  height:15px;
  border-radius:50%;
  background:white;
  box-shadow:0 0 10px #70f9e9,0 0 15px #ff73ca;
  animation:exclusiveSparkPulse .9s ease-in-out infinite;
}
.exclusive-neon-dot.d1{left:8%;top:17%}
.exclusive-neon-dot.d2{right:5%;top:54%;animation-delay:.3s}
.exclusive-neon-dot.d3{left:29%;bottom:0;animation-delay:.6s}

/* Unknown/custom admin items still receive a visible marker. */
.exclusive-custom-item{
  position:absolute;
  right:9px;
  top:12px;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:4px solid #fff;
  border-radius:50%;
  background:linear-gradient(135deg,#70f9e9,#9f6dff,#ff73ca);
  color:white;
  font-size:1.8rem;
  box-shadow:0 0 15px #9f6dff;
  animation:exclusiveSparkPulse 1.1s ease-in-out infinite;
}

@keyframes exclusiveCrownFloat{
  50%{transform:translateX(-50%) translateY(-7px) rotate(4deg)}
}
@keyframes exclusiveAuraSpin{
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes exclusiveAuraSpinReverse{
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
@keyframes exclusiveSparkPulse{
  50%{transform:scale(1.35);opacity:.55}
}
@keyframes exclusiveStarBob{
  50%{transform:translateY(-13px) rotate(18deg) scale(1.2)}
}
@keyframes exclusiveBadgeShine{
  50%{transform:translate(-50%,-50%) rotate(225deg) scale(1.12)}
}
@keyframes exclusiveTrophyBounce{
  50%{transform:translateY(-8px) rotate(2deg)}
}
@keyframes exclusiveFrameColor{
  0%{filter:hue-rotate(0deg)}
  100%{filter:hue-rotate(360deg)}
}

@media(max-width:720px){
  .exclusive-collection-grid,.live-event-details{grid-template-columns:1fr}
  .exclusive-item{grid-template-columns:48px 1fr}
  .exclusive-item button,.exclusive-owned-label{grid-column:1/-1;width:100%;text-align:center}
}


/* Hammy Focus House v24 — grounded hamster, announcements, and market */
.room>#hamster:not(.running):not([class*="furn-"]){
  bottom:45px;
}

.player-announcement{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:12px;padding:12px 14px;border:3px solid var(--line);
  border-radius:18px;background:linear-gradient(135deg,#fff9d8,#f0e5ff);
  box-shadow:0 5px 0 rgba(73,57,81,.13)
}
.player-announcement[data-priority="important"]{background:linear-gradient(135deg,#ffe1bf,#ffd5dc)}
.player-announcement[data-priority="celebration"]{background:linear-gradient(135deg,#fff1a9,#e9d8ff)}
.player-announcement span{display:inline-block;font-size:.68rem;font-weight:1000;letter-spacing:.08em}
.player-announcement h3{margin:3px 0}.player-announcement p{margin:0}

.market-wallet{
  display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border:3px solid var(--line);
  border-radius:999px;background:#fff1bd;font-weight:900
}
.market-daily{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;
  background:linear-gradient(135deg,#fff2aa,#eadcff)
}
.market-kicker{
  display:inline-block;margin-bottom:4px;padding:4px 8px;border:2px solid var(--line);
  border-radius:999px;background:#fff;font-size:.68rem;font-weight:1000;letter-spacing:.08em
}
.market-section-title{margin:18px 0 8px}
.market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.market-card{
  display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;
  padding:11px;border:3px solid var(--line);border-radius:16px;background:var(--panel);
  box-shadow:0 4px 0 rgba(73,57,81,.1)
}
.market-item-icon{
  display:grid;place-items:center;width:56px;height:56px;border:2px solid var(--line);
  border-radius:15px;background:var(--soft);font-size:1.75rem
}
.market-card p{margin:4px 0 0;font-size:.8rem}
.market-owned{font-weight:900;color:var(--accent)}
.fruit-shop-card{display:grid;gap:10px}
.fruit-actions{display:flex;gap:8px;flex-wrap:wrap}
.fruit-actions button{flex:1}

.market-decoration{position:absolute;z-index:7;pointer-events:none}
.star-garland{left:7%;right:30%;top:25px;display:flex;justify-content:space-around;color:#ffd85f;font-size:1.5rem}
.star-garland:before{content:"";position:absolute;left:0;right:0;top:11px;border-top:3px solid var(--line);z-index:-1}
.rainbow-banner{left:28%;top:44px;padding:8px 18px;border:4px solid var(--line);border-radius:12px;background:linear-gradient(90deg,#ff9ca8,#ffd66d,#91d7a0,#8dc6ef,#bd9be8);font-weight:1000;transform:rotate(-2deg)}
.flower-pot{left:8%;bottom:31%;width:80px;height:92px}
.flower-pot .decor-pot{position:absolute;left:21px;bottom:0;width:42px;height:35px;border:4px solid var(--line);border-radius:7px 7px 16px 16px;background:#c77d55}
.flower-pot .flower{position:absolute;width:24px;height:24px;border:3px solid var(--line);border-radius:50%;background:#ffd66d}
.flower-pot .flower:after{content:"";position:absolute;left:8px;top:18px;width:4px;height:45px;background:#65a766;z-index:-1}
.flower-pot .flower.a{left:5px;top:18px}
.flower-pot .flower.b{left:29px;top:2px;background:#ef8eaa}
.flower-pot .flower.c{right:2px;top:22px;background:#8bc9ee}
.mini-fountain{right:7%;bottom:29%;width:110px;height:90px}
.fountain-bowl{position:absolute;left:10px;right:10px;bottom:0;height:35px;border:4px solid var(--line);border-radius:50%;background:#8acbe8}
.water-spray{position:absolute;left:50%;bottom:23px;width:45px;height:55px;transform:translateX(-50%);border:6px solid #8bd8f4;border-bottom:0;border-radius:50% 50% 0 0;animation:fountainPulse 1.2s ease-in-out infinite}
.cloud-beanbag{left:18%;bottom:24%;width:130px;height:62px}
.cloud-beanbag span{position:absolute;bottom:0;border:4px solid var(--line);border-radius:50%;background:#f7f6ff}
.cloud-beanbag span:nth-child(1){left:0;width:70px;height:52px}
.cloud-beanbag span:nth-child(2){left:38px;width:82px;height:62px}
.cloud-beanbag span:nth-child(3){right:0;width:58px;height:45px}
@keyframes fountainPulse{50%{transform:translateX(-50%) scaleY(.78);opacity:.7}}

@media(max-width:720px){
  .market-grid{grid-template-columns:1fr}
  .market-card{grid-template-columns:52px 1fr}
  .market-card button{grid-column:1/-1;width:100%}
  .market-daily,.player-announcement{align-items:stretch;display:grid}
  .rainbow-banner{left:20%;font-size:.75rem}
}


/* Hammy Focus House v24.4 — cloud account stability */
.cloud-warning{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.cloud-warning p{margin:4px 0 0}
.cloud-action-message{
  margin-top:10px;
  min-height:44px;
  padding:10px 12px;
  border:2px dashed var(--line);
  border-radius:13px;
  background:var(--soft);
  font-weight:800;
}
.cloud-action-message.working{background:#fff4c9}
.cloud-action-message.success{background:#dff5e5}
.cloud-action-message.error{background:#ffe0e5}
@media(max-width:680px){
  .cloud-warning{display:grid;align-items:stretch}
  .cloud-warning button{width:100%}
}


/* Hammy Focus House v24.5 — new cloud identity */
.new-cloud-account-card{
  background:linear-gradient(135deg,#f2e9ff,#fff9d8);
}
.new-cloud-explanation{
  margin:10px 0;
  padding:11px;
  border:2px dashed var(--line);
  border-radius:13px;
  background:#fff;
}
.new-cloud-explanation p{margin:5px 0 0}


/* Hammy Focus House v24.6 — permanent account replacement */
.replace-cloud-account-card{
  border-color:#8e3348;
  background:linear-gradient(135deg,#fff1f3,#fff9dc);
}
.replace-account-warning{
  margin:10px 0 12px;
  padding:11px;
  border:3px solid #8e3348;
  border-radius:14px;
  background:#fff;
}
.replace-account-warning p{margin:5px 0 0}
.danger-chip{
  background:#ffdce3;
  color:#7f293d;
}
.danger-primary{
  background:#a83850;
  border-color:#5f2635;
}
