:root{--cream:#fbf7f1;--paper:#fffdf9;--blush:#f3d4cf;--blush-2:#f8e7e3;--rose:#bf7f74;--brown:#6d4e41;--soft-brown:#9b7768;--gold:#d8a84f;--line:rgba(109,78,65,.14)}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(243,212,207,.6),transparent 34%),linear-gradient(180deg,#fff,var(--cream));color:var(--brown);font-family:Georgia,"Times New Roman",serif}
.flowtel-app{min-height:100vh;display:grid;place-items:center;padding:30px 18px}
.flowtel-shell{position:relative;width:min(100%,1180px);min-height:720px;padding:54px 38px 42px;background:rgba(255,253,249,.96);border:1px solid var(--line);border-radius:36px;box-shadow:0 24px 90px rgba(109,78,65,.13);text-align:center;overflow:hidden}
.progress-ribbon{position:absolute;top:24px;left:50%;transform:translateX(-50%);width:62%;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.progress-ribbon span{height:5px;border-radius:999px;background:rgba(109,78,65,.09)}
.progress-ribbon span.active{background:linear-gradient(90deg,var(--blush),var(--gold))}
.rose-corner{position:absolute;top:18px;right:22px;width:142px;height:142px;object-fit:contain;opacity:.52;filter:saturate(.9) contrast(.94);mix-blend-mode:multiply}
.scene{display:none;animation:flowtelFade .55s ease both}
.scene.active{display:block}
.eyebrow{margin:70px 0 10px;font-family:Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.24em;color:var(--rose);text-transform:uppercase}
h1,h2{margin:0;font-weight:400;letter-spacing:.08em;text-transform:uppercase;line-height:1.05}
h1{font-size:clamp(2rem,5vw,3.7rem)}
h2{font-size:clamp(1.55rem,3.6vw,2.65rem)}
h3{font-weight:400;letter-spacing:.04em}
.subtext{margin:20px auto 32px;font-size:1.05rem;line-height:1.7;color:var(--soft-brown)}
.auth-panel,.checkin-form,.wheel-panel,.room-card,.journal-card,.checkout-card,.visits-drawer,.info-card,.concierge-note,.video-lounge-card,.hotel-key-card{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 34px rgba(109,78,65,.07)}
.auth-panel,.checkin-form{max-width:390px;margin:0 auto;padding:24px}
.panel-title,.welcome-line{margin:0 0 16px;font-family:Arial,sans-serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);font-size:.76rem}
.passport-note{background:rgba(248,231,227,.62);border-radius:999px;padding:10px 14px}
label{display:block;margin:15px 0 8px;font-family:Arial,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase;color:var(--soft-brown)}
input,select,textarea{width:100%;border:1px solid var(--line);border-radius:999px;padding:14px 16px;background:#fff;color:var(--brown);font:inherit}
textarea{border-radius:18px;min-height:140px;resize:vertical;line-height:1.5}
input[type=number]{text-align:center;font-size:1.2rem}
button{width:100%;margin-top:18px;border:1px solid rgba(109,78,65,.14);border-radius:999px;padding:14px 20px;background:var(--blush-2);color:var(--brown);font-family:Arial,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;box-shadow:0 10px 24px rgba(109,78,65,.08);transition:transform .25s ease,opacity .25s ease,background .25s ease}
button:hover{transform:translateY(-1px)}
button.secondary,.drawer-close{background:transparent;box-shadow:none}
.drawer-close{width:auto;margin:0 0 16px;padding:10px 16px}
.microcopy{margin:14px 0 0;font-size:.8rem;opacity:.65}
#message{min-height:28px;margin-top:20px;font-family:Arial,sans-serif;font-weight:700}
.hidden{display:none!important}
.arrival-choice{display:grid;gap:10px;animation:softSlide .45s ease both}
.guest-checkin-fields{animation:softSlide .45s ease both}
.hotel-key-card{max-width:420px;margin:42px auto 0;padding:34px;text-align:center}
.hotel-key-card img{width:110px;height:110px;object-fit:contain;opacity:.72;mix-blend-mode:multiply}
.hotel-key-card p{font-size:1.15rem;color:var(--soft-brown)}
.moon-glow{margin:42px auto 0;width:145px;height:145px;border-radius:50%;display:grid;place-items:center;font-size:6rem;color:var(--gold);background:radial-gradient(circle,rgba(248,231,227,.95),rgba(243,212,207,.3));animation:moonPulse 1.8s ease-in-out infinite}
.suite-subline{margin:14px auto 28px;max-width:740px;color:var(--soft-brown);line-height:1.55}
.suite-grid{display:grid;grid-template-columns:minmax(420px,520px) minmax(420px,520px);gap:28px;align-items:start;justify-content:center;margin-top:28px}
.suite-rail{display:grid;gap:14px}
.wheel-column{display:grid;gap:18px}
.wheel-panel{width:min(100%,580px);margin:0 auto;padding:30px}
.medicine-wheel{position:relative;width:min(100%,520px);aspect-ratio:1;margin:0 auto;border-radius:50%;overflow:visible;background:radial-gradient(circle at center,rgba(255,253,249,.96) 0 26%,rgba(255,255,255,.7) 27% 30%,transparent 31%),radial-gradient(circle at center,transparent 0 58%,rgba(216,168,79,.14) 59%,rgba(216,168,79,.14) 60%,transparent 61%),radial-gradient(circle at center,transparent 0 72%,rgba(109,78,65,.1) 73%,transparent 74%),linear-gradient(135deg,rgba(248,231,227,.46),rgba(255,253,249,.9) 46%,rgba(251,247,241,.9));box-shadow:inset 0 0 42px rgba(109,78,65,.06)}
.wheel-compass-ring{position:absolute;inset:6.5%;border:1px solid rgba(216,168,79,.24);border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.72)}
.wheel-axis{position:absolute;left:50%;top:50%;background:linear-gradient(90deg,transparent,rgba(109,78,65,.12),transparent);transform-origin:center;pointer-events:none}
.wheel-axis-vertical{width:1px;height:82%;transform:translate(-50%,-50%)}
.wheel-axis-horizontal{width:82%;height:1px;transform:translate(-50%,-50%)}
.wheel-cardinal{position:absolute;z-index:2;font-family:Arial,sans-serif;font-size:.58rem;font-weight:700;letter-spacing:.2em;color:rgba(109,78,65,.52);text-transform:uppercase;pointer-events:none}
.wheel-cardinal-north{top:-5.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:-7.5%;top:50%;transform:translateY(-50%) rotate(90deg)}
.wheel-cardinal-south{bottom:-5.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-west{left:-7.5%;top:50%;transform:translateY(-50%) rotate(-90deg)}
.wheel-season{position:absolute;z-index:2;display:grid;gap:3px;text-align:center;font-size:.78rem;line-height:1.1;color:rgba(109,78,65,.72);pointer-events:none}
.wheel-season small{font-family:Arial,sans-serif;font-size:.52rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(191,127,116,.74)}
.wheel-season-winter{left:2%;bottom:4%}
.wheel-season-spring{right:2%;bottom:4%}
.wheel-season-summer{right:2%;top:4%}
.wheel-season-autumn{left:2%;top:4%}
.wheel-room{position:absolute;z-index:4;left:var(--x);top:var(--y);width:34px;height:34px;transform:translate(-50%,-50%);margin:0;padding:0;border-radius:50%;background:rgba(255,253,249,.96);border:1px solid rgba(109,78,65,.18);box-shadow:0 8px 20px rgba(109,78,65,.08);font-family:Georgia,serif;font-size:.84rem;color:var(--brown);letter-spacing:0;transition:transform .28s ease,box-shadow .28s ease,background .28s ease}
.wheel-room:hover{transform:translate(-50%,-50%) scale(1.04)}
.wheel-room.active{background:#f4c8c4;color:var(--brown);border-color:#d89a91;box-shadow:0 0 0 7px rgba(244,200,196,.28),0 12px 24px rgba(109,78,65,.12);animation:bubblePulse 1.8s ease-in-out infinite}
.wheel-current-star{position:absolute;z-index:5;left:var(--x);top:var(--y);transform:translate(-168%,-50%);color:var(--gold);font-size:1.5rem;filter:drop-shadow(0 4px 8px rgba(109,78,65,.2));pointer-events:none}
.you-are-here{margin:16px 0 0;font-family:Arial,sans-serif;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--rose)}
.info-card,.room-card,.journal-card,.checkout-card,.visits-drawer,.concierge-note,.video-lounge-card{padding:20px;text-align:left}
.info-card span,.room-stack span{display:block;margin-bottom:8px;font-family:Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rose)}
.info-card strong{display:block;font-size:1.25rem;font-weight:400}
.concierge-note{background:#f9dfda}
.concierge-note.quiet{background:rgba(255,255,255,.55);opacity:.62}
.room-card,.journal-card,.checkout-card,.visits-drawer,.video-lounge-card{margin-top:22px}
.room-card .eyebrow,.journal-card .eyebrow,.checkout-card .eyebrow,.visits-drawer .eyebrow,.video-lounge-card .eyebrow{margin-top:0}
.room-stack{display:grid;gap:12px}
.room-stack article,.visit-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
.moon-card{width:min(100%,580px);max-width:580px;margin:0 auto}
.suite-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.visit-card{margin-bottom:12px}
.visit-reflection{font-style:italic;opacity:.8}
.drawer-note{font-size:.85rem;color:var(--soft-brown);font-style:italic}
#reflectionMessage,#checkoutMessage{font-family:Arial,sans-serif;font-weight:700;color:var(--rose)}
.lounge-visits{display:block!important}
.lounge-scene .checkout-card,.lounge-scene .visits-drawer,.lounge-scene .video-lounge-card{max-width:760px;margin-left:auto;margin-right:auto}
.video-placeholder{display:grid;place-items:center;min-height:180px;margin-top:14px;border:1px dashed rgba(109,78,65,.2);border-radius:18px;background:rgba(248,231,227,.28);color:var(--soft-brown);font-style:italic}
@keyframes flowtelFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes softSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes moonPulse{0%,100%{transform:scale(1);opacity:.92}50%{transform:scale(1.04);opacity:1}}
@keyframes bubblePulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.05)}}
@media(max-width:900px){.flowtel-shell{padding:44px 20px 32px}.rose-corner{width:92px;height:92px;right:14px}.eyebrow{margin-top:64px}.suite-grid,.suite-actions{grid-template-columns:1fr}.wheel-panel,.moon-card{width:min(100%,520px)}.wheel-room{width:29px;height:29px;font-size:.68rem}.wheel-rose{width:132px;height:132px}.wheel-cardinal{font-size:.5rem}.wheel-season{font-size:.66rem}.wheel-season small{font-size:.45rem}}


/* Release 0.4.2: arrival flow and practitioner lounge refinement */
.arrival-choice.is-open{margin-top:18px}
.arrival-choice.is-open:before{content:"Choose your arrival";display:block;margin:2px 0 0;font-family:Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rose)}
.lounge-clockin-button{margin-top:18px}

/* Release 0.4.3 — Luxury Suite & Turndown refinement */
.suite-grid{grid-template-columns:minmax(460px,620px) minmax(360px,500px);gap:34px;align-items:start}
.wheel-column{gap:22px}
.wheel-panel,.moon-card{width:min(100%,620px);max-width:620px}
.wheel-panel{padding:34px 34px 40px}
.medicine-wheel{width:min(100%,540px);background:radial-gradient(circle at center,rgba(255,253,249,.98) 0 24%,rgba(255,255,255,.72) 25% 30%,transparent 31%),radial-gradient(circle at center,transparent 0 57%,rgba(216,168,79,.12) 58%,rgba(216,168,79,.12) 59%,transparent 60%),radial-gradient(circle at center,transparent 0 69%,rgba(109,78,65,.09) 70%,transparent 71%),linear-gradient(135deg,rgba(248,231,227,.38),rgba(255,253,249,.92) 46%,rgba(251,247,241,.94));}
.wheel-compass-ring{inset:8%;border-color:rgba(216,168,79,.22)}
.wheel-axis-vertical{height:76%}.wheel-axis-horizontal{width:76%}
.wheel-cardinal{font-size:.56rem;letter-spacing:.24em;color:rgba(109,78,65,.46)}
.wheel-cardinal-north{top:-8.25%}.wheel-cardinal-south{bottom:-8.25%}.wheel-cardinal-east{right:-10.25%}.wheel-cardinal-west{left:-10.25%}
.wheel-season{min-width:118px;font-size:.76rem;color:rgba(109,78,65,.68)}
.wheel-season small{font-size:.5rem;color:rgba(191,127,116,.68)}
.wheel-season-autumn{left:-1%;top:-1%}.wheel-season-summer{right:-1%;top:-1%}.wheel-season-spring{right:-1%;bottom:-1%}.wheel-season-winter{left:-1%;bottom:-1%}
.rose-compass-center {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(46%, 230px);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  object-fit: contain;
  z-index: 4;
  pointer-events: none;
}
.wheel-room{width:31px;height:31px;font-size:.76rem;box-shadow:0 6px 16px rgba(109,78,65,.07)}
.wheel-current-star{font-size:1.05rem;transform:translate(-50%,-184%);color:var(--gold)}
.you-are-here{margin:28px 0 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:rgba(191,127,116,.86)}
.you-are-here:before{content:"◆";color:var(--gold);font-size:.86rem;letter-spacing:0}
.moon-card{min-height:170px;padding:24px 26px}
.concierge-note{background:rgba(255,253,249,.88);border-color:rgba(216,168,79,.18)}
.concierge-note.quiet{background:rgba(255,253,249,.78);opacity:1}
.concierge-note #witnessText{display:grid;gap:10px;color:var(--soft-brown);line-height:1.55}
.concierge-note #witnessText strong{display:block;color:var(--brown);font-weight:400;font-size:1.18rem}
.concierge-note #witnessText span,.concierge-note #witnessText small{display:block;color:var(--soft-brown)}
.concierge-note #witnessText button{width:auto;margin-top:6px;justify-self:start;padding:12px 18px}
.concierge-fulfilled{background:linear-gradient(135deg,rgba(255,253,249,.94),rgba(248,231,227,.46));border-color:rgba(216,168,79,.22)}
.concierge-note-text{margin:8px 0 0;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--line);font-style:italic;color:var(--brown)}
@media(max-width:900px){.wheel-panel,.moon-card{width:min(100%,540px)}.medicine-wheel{width:min(100%,500px)}.wheel-cardinal-north{top:-7%}.wheel-cardinal-south{bottom:-7%}.wheel-cardinal-east{right:-8%}.wheel-cardinal-west{left:-8%}.wheel-season{min-width:96px;font-size:.64rem}.rose-compass-center{width:104px;height:104px}.rose-compass-center:before{height:94px}.rose-compass-center:after{height:94px}.wheel-room{width:27px;height:27px;font-size:.64rem}}

/* Release 0.4.3 refinement patch — spa compass polish */
.wheel-panel{
  padding:42px 42px 58px;
  background:linear-gradient(145deg,rgba(255,253,249,.94),rgba(251,247,241,.96));
  border-color:rgba(216,168,79,.18);
  box-shadow:0 18px 48px rgba(109,78,65,.08), inset 0 0 0 1px rgba(255,255,255,.72);
}
.medicine-wheel{
  width:min(100%,548px);
  background:
    radial-gradient(circle at center,rgba(255,253,249,1) 0 18%,rgba(255,253,249,.82) 19% 26%,transparent 27%),
    radial-gradient(circle at center,transparent 0 42%,rgba(216,168,79,.16) 43%,rgba(216,168,79,.16) 43.8%,transparent 44.8%),
    radial-gradient(circle at center,transparent 0 58%,rgba(109,78,65,.11) 59%,rgba(109,78,65,.11) 59.6%,transparent 60.6%),
    radial-gradient(circle at center,transparent 0 70%,rgba(216,168,79,.24) 71%,rgba(216,168,79,.24) 72.2%,transparent 73.2%),
    radial-gradient(circle at center,transparent 0 80%,rgba(109,78,65,.08) 81%,rgba(109,78,65,.08) 81.6%,transparent 82.8%),
    linear-gradient(135deg,rgba(248,231,227,.42),rgba(255,253,249,.96) 48%,rgba(251,247,241,.96));
  box-shadow:inset 0 0 54px rgba(109,78,65,.07), inset 0 0 0 1px rgba(216,168,79,.08);
}
.wheel-compass-ring{inset:10%;border:1px solid rgba(216,168,79,.34);box-shadow:inset 0 0 0 10px rgba(255,253,249,.32),0 0 0 1px rgba(109,78,65,.05)}
.wheel-axis{opacity:.58;background:linear-gradient(90deg,transparent,rgba(216,168,79,.2),transparent)}
.wheel-axis-vertical{height:72%}.wheel-axis-horizontal{width:72%}
.wheel-cardinal{font-size:.52rem;letter-spacing:.2em;color:rgba(109,78,65,.5);max-width:86px;text-align:center;white-space:nowrap}
.wheel-cardinal-north{top:9.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-south{bottom:9.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:8.4%;top:50%;transform:translateY(-50%) rotate(90deg)}
.wheel-cardinal-west{left:8.4%;top:50%;transform:translateY(-50%) rotate(-90deg)}
.wheel-season{min-width:120px;padding:8px 10px;border-radius:18px;background:rgba(255,253,249,.52);font-size:.75rem;color:rgba(109,78,65,.7)}
.wheel-season-autumn{left:1.5%;top:1.5%}.wheel-season-summer{right:1.5%;top:1.5%}.wheel-season-spring{right:1.5%;bottom:1.5%}.wheel-season-winter{left:1.5%;bottom:1.5%}
.wheel-room{width:30px;height:30px;font-size:.74rem;background:rgba(255,253,249,.98);border-color:rgba(109,78,65,.16);box-shadow:0 5px 14px rgba(109,78,65,.07)}
.wheel-room.active{background:var(--blush);border-color:rgba(191,127,116,.45);box-shadow:0 0 0 6px rgba(243,212,207,.26),0 8px 18px rgba(109,78,65,.11)}
.wheel-current-star{font-size:1.18rem;transform:translate(-50%,-50%);color:var(--gold);text-shadow:0 1px 0 rgba(255,253,249,.9);filter:drop-shadow(0 4px 7px rgba(109,78,65,.18))}
.you-are-here{margin:44px 0 0;position:relative;top:10px}
.rose-compass-center{width:150px;height:150px;overflow:visible}
.rose-compass-center:before,.rose-compass-center:after{width:0;height:0;background:transparent;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:68px solid rgba(216,168,79,.74);border-radius:0;transform-origin:50% 87%}
.rose-compass-center:before{transform:translate(-50%,-86%) rotate(0deg)}
.rose-compass-center:after{transform:translate(-50%,-86%) rotate(90deg)}
.rose-compass-center .compass-spoke{position:absolute;left:50%;top:50%;width:0;height:0;background:transparent;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:58px solid rgba(216,168,79,.36);border-radius:0;transform-origin:50% 88%}
.rose-compass-center .compass-spoke:nth-child(1){transform:translate(-50%,-86%) rotate(180deg)}
.rose-compass-center .compass-spoke:nth-child(2){transform:translate(-50%,-86%) rotate(270deg)}
.rose-compass-center .compass-spoke:nth-child(3){transform:translate(-50%,-86%) rotate(45deg)}
.rose-compass-center .compass-spoke:nth-child(4){transform:translate(-50%,-86%) rotate(135deg)}
.rose-compass-center .compass-spoke:nth-child(5){transform:translate(-50%,-86%) rotate(225deg)}
.rose-compass-center .compass-spoke:nth-child(6){transform:translate(-50%,-86%) rotate(315deg)}
.rose-compass-center .rose-spiral{position:absolute;left:50%;top:50%;width:62px;height:62px;border:1.5px solid rgba(216,168,79,.72);border-left-color:transparent;border-radius:50%;transform:translate(-50%,-50%) rotate(24deg);box-shadow:inset 0 0 0 11px rgba(255,253,249,.72),0 0 0 8px rgba(255,253,249,.48)}
.rose-compass-center .rose-spiral:before{content:"";position:absolute;inset:11px;border:1.5px solid rgba(216,168,79,.62);border-right-color:transparent;border-radius:50%;transform:rotate(-42deg)}
.rose-compass-center .rose-bloom{position:absolute;left:50%;top:50%;width:42px;height:22px;border:1.2px solid rgba(216,168,79,.58);border-radius:50%;background:rgba(255,253,249,.18);transform-origin:center}
.rose-compass-center .bloom-one{transform:translate(-50%,-50%) rotate(18deg)}
.rose-compass-center .bloom-two{transform:translate(-50%,-50%) rotate(78deg)}
.rose-compass-center .bloom-three{transform:translate(-50%,-50%) rotate(138deg)}
@media(max-width:900px){.wheel-panel{padding:34px 24px 52px}.wheel-cardinal-north{top:10%}.wheel-cardinal-south{bottom:10%}.wheel-cardinal-east{right:8%}.wheel-cardinal-west{left:8%}.you-are-here{margin-top:38px}.rose-compass-center{width:118px;height:118px}}

/* Release 0.4.3 final specification pass — luxury cream-and-gold medicine wheel */
.wheel-panel{
  padding:44px 44px 66px;
  background:linear-gradient(145deg,rgba(255,253,249,.96),rgba(251,247,241,.98));
  border-color:rgba(216,168,79,.2);
  box-shadow:0 20px 54px rgba(109,78,65,.08), inset 0 0 0 1px rgba(255,255,255,.75);
}
.medicine-wheel{
  width:min(100%,560px);
  margin:0 auto;
  background:
    radial-gradient(circle at center,rgba(255,253,249,1) 0 24%,transparent 24.6%),
    radial-gradient(circle at center,transparent 0 48%,rgba(216,168,79,.34) 48.5%,rgba(216,168,79,.34) 49.4%,transparent 50.2%),
    radial-gradient(circle at center,transparent 0 66.8%,rgba(216,168,79,.34) 67.3%,rgba(216,168,79,.34) 68.2%,transparent 69%),
    linear-gradient(135deg,rgba(248,231,227,.34),rgba(255,253,249,.98) 48%,rgba(251,247,241,.98));
  box-shadow:inset 0 0 46px rgba(109,78,65,.05), inset 0 0 0 1px rgba(216,168,79,.08);
}
.wheel-compass-ring{
  inset:14.2%;
  border:1px solid rgba(216,168,79,.34);
  box-shadow:0 0 0 9px rgba(255,253,249,.22), inset 0 0 0 1px rgba(255,253,249,.52);
}
.wheel-axis{opacity:.42;background:linear-gradient(90deg,transparent,rgba(216,168,79,.22),transparent)}
.wheel-axis-vertical{height:68%}.wheel-axis-horizontal{width:68%}
.wheel-cardinal{
  z-index:4;
  font-size:.52rem;
  letter-spacing:.2em;
  color:rgba(109,78,65,.54);
  max-width:74px;
  text-align:center;
  white-space:nowrap;
}
.wheel-cardinal-north{top:12.2%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-south{bottom:12.2%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:11.6%;top:50%;transform:translateY(-50%) rotate(90deg)}
.wheel-cardinal-west{left:11.6%;top:50%;transform:translateY(-50%) rotate(-90deg)}
.wheel-season{
  z-index:5;
  min-width:128px;
  padding:8px 10px;
  border-radius:18px;
  background:rgba(255,253,249,.62);
  box-shadow:0 8px 20px rgba(109,78,65,.04);
  font-size:.74rem;
  color:rgba(216,168,79,.96);
}
.wheel-season em{display:block;margin-bottom:2px;font-style:normal;font-size:.82rem;filter:saturate(.9)}
.wheel-season small{margin-top:2px;font-size:.5rem;color:rgba(90,74,58,.78)}
.wheel-season-autumn{left:1.75%;top:1.75%}.wheel-season-summer{right:1.75%;top:1.75%}.wheel-season-spring{right:1.75%;bottom:1.75%}.wheel-season-winter{left:1.75%;bottom:1.75%}
.wheel-room{
  width:33px;
  height:33px;
  font-size:.78rem;
  background:rgba(255,253,249,.99);
  border:1.5px solid rgba(216,168,79,.52);
  color:#5A4A3A;
  box-shadow:0 6px 15px rgba(109,78,65,.08), inset 0 1px 0 rgba(255,255,255,.9);
}
.wheel-room.active{
  background:#f3d4cf;
  border-color:rgba(216,168,79,.72);
  box-shadow:0 0 0 5px rgba(243,212,207,.24),0 8px 18px rgba(109,78,65,.12);
}
.wheel-current-star{
  z-index:9;
  font-size:1.28rem;
  transform:translate(-50%,-50%);
  color:transparent;
  text-shadow:none;
  filter:drop-shadow(0 5px 8px rgba(109,78,65,.18));
}
.wheel-current-star:before{
  content:"✦";
  color:var(--gold);
  background:linear-gradient(135deg,#f5d58a,#c69231 45%,#f8e4aa 70%,#b98124);
  -webkit-background-clip:text;
  background-clip:text;
}
.rose-compass-center{
  width:158px;
  height:158px;
  filter:drop-shadow(0 15px 18px rgba(109,78,65,.08));
}
.rose-compass-center:before,
.rose-compass-center:after{
  border-left-width:8px;
  border-right-width:8px;
  border-bottom-width:72px;
  border-bottom-color:rgba(216,168,79,.76);
}
.rose-compass-center .compass-spoke{border-left-width:4.5px;border-right-width:4.5px;border-bottom-width:58px;border-bottom-color:rgba(216,168,79,.42)}
.rose-compass-center .rose-spiral{
  width:68px;
  height:68px;
  border:1.6px solid rgba(216,168,79,.78);
  border-left-color:transparent;
  box-shadow:inset 0 0 0 12px rgba(255,253,249,.74),0 0 0 9px rgba(255,253,249,.5),0 0 18px rgba(216,168,79,.08);
}
.rose-compass-center .rose-spiral:before{inset:12px;border-color:rgba(216,168,79,.64);border-right-color:transparent}
.rose-compass-center .rose-spiral:after{content:"";position:absolute;inset:22px;border:1.4px solid rgba(216,168,79,.54);border-top-color:transparent;border-radius:50%;transform:rotate(32deg)}
.rose-compass-center .rose-bloom{width:46px;height:24px;border-color:rgba(216,168,79,.58)}
.you-are-here{
  margin:54px 0 0;
  top:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  color:rgba(90,74,58,.8);
}
.you-are-here:before{content:"✦";font-size:1rem;color:var(--gold)}
.wheel-legend-helper{
  margin:18px auto 0;
  max-width:360px;
  font-size:.82rem;
  line-height:1.45;
  color:rgba(155,119,104,.8);
}
@media(max-width:900px){
  .wheel-panel{padding:34px 22px 58px}
  .medicine-wheel{width:min(100%,500px)}
  .wheel-room{width:28px;height:28px;font-size:.66rem}
  .wheel-cardinal-north{top:11.5%}.wheel-cardinal-south{bottom:11.5%}.wheel-cardinal-east{right:10.4%}.wheel-cardinal-west{left:10.4%}
  .wheel-season{min-width:100px;font-size:.63rem;padding:7px 8px}
  .rose-compass-center{width:120px;height:120px}
  .you-are-here{margin-top:48px}
}

/* Release 0.4.4 — final medicine wheel and suite layout refinement */
.suite-grid{
  grid-template-columns:minmax(500px,660px) minmax(380px,500px);
  align-items:stretch;
  gap:34px;
}
.wheel-column{
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:100%;
}
.wheel-panel{
  width:100%;
  max-width:660px;
  min-height:100%;
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:72px 58px 76px;
  overflow:visible;
  background:linear-gradient(145deg,rgba(255,253,249,.98),rgba(251,247,241,.99));
  border-color:rgba(216,168,79,.24);
  box-shadow:0 22px 58px rgba(109,78,65,.085), inset 0 0 0 1px rgba(255,255,255,.78);
}
.medicine-wheel{
  width:min(100%,560px);
  max-width:560px;
  overflow:visible;
  background:
    radial-gradient(circle at center,rgba(255,253,249,1) 0 25%,transparent 25.6%),
    radial-gradient(circle at center,transparent 0 35.6%,rgba(216,168,79,.48) 36.1%,rgba(216,168,79,.48) 36.9%,transparent 37.5%),
    radial-gradient(circle at center,transparent 0 47.4%,rgba(216,168,79,.48) 47.9%,rgba(216,168,79,.48) 48.8%,transparent 49.5%),
    linear-gradient(135deg,rgba(248,231,227,.3),rgba(255,253,249,.99) 48%,rgba(251,247,241,.98));
  box-shadow:inset 0 0 50px rgba(109,78,65,.045), inset 0 0 0 1px rgba(216,168,79,.07);
}
.wheel-compass-ring{display:none}
.wheel-axis{opacity:.32;background:linear-gradient(90deg,transparent,rgba(216,168,79,.18),transparent)}
.wheel-axis-vertical{height:64%}.wheel-axis-horizontal{width:64%}
.wheel-room{
  width:38px;
  height:38px;
  font-size:.86rem;
  border:1.5px solid rgba(216,168,79,.58);
  box-shadow:0 7px 16px rgba(109,78,65,.075), inset 0 1px 0 rgba(255,255,255,.92);
}
.wheel-room.active{
  background:#f3d4cf;
  border-color:rgba(216,168,79,.82);
  box-shadow:0 0 0 4px rgba(243,212,207,.22),0 9px 18px rgba(109,78,65,.12);
}
.wheel-current-star{
  transform:translate(-50%,-50%);
  font-size:1.42rem;
}
.wheel-cardinal{
  z-index:4;
  font-size:.5rem;
  letter-spacing:.18em;
  color:rgba(90,74,58,.52);
}
.wheel-cardinal-north{top:4.2%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-south{bottom:4.2%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:3.3%;top:50%;transform:translateY(-50%) rotate(90deg)}
.wheel-cardinal-west{left:3.3%;top:50%;transform:translateY(-50%) rotate(-90deg)}
.wheel-season{
  z-index:6;
  min-width:132px;
  padding:9px 12px;
  background:rgba(255,253,249,.74);
  border:1px solid rgba(216,168,79,.14);
  box-shadow:0 10px 24px rgba(109,78,65,.045);
}
.wheel-season-autumn{left:-12%;top:-7%}
.wheel-season-summer{right:-12%;top:-7%}
.wheel-season-spring{right:-12%;bottom:-7%}
.wheel-season-winter{left:-12%;bottom:-7%}
.rose-compass-center{
  width:176px;
  height:176px;
  filter:drop-shadow(0 16px 20px rgba(109,78,65,.09));
}
.rose-compass-center:before,.rose-compass-center:after,.rose-compass-center .compass-spoke,.rose-compass-center .rose-spiral,.rose-compass-center .rose-bloom{display:none!important}
.rose-compass-svg{display:block;width:100%;height:100%;overflow:visible}
.rose-compass-svg .compass-points path{filter:drop-shadow(0 2px 2px rgba(109,78,65,.08))}
.you-are-here{
  margin:72px 0 0;
  position:relative;
  top:0;
  letter-spacing:.18em;
}
.wheel-legend-helper{margin-top:16px}
.moon-card{display:none!important}
.journal-card{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.reflection-moon-magic{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 12px;
  align-items:center;
  margin:2px 0 4px;
  padding:13px 15px;
  border:1px solid rgba(216,168,79,.18);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(248,231,227,.38),rgba(255,253,249,.88));
}
.reflection-moon-label{
  grid-row:1 / span 2;
  align-self:center;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,253,249,.88);
  border:1px solid rgba(216,168,79,.18);
  font-family:Arial,sans-serif;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--rose);
}
.reflection-moon-magic strong{
  display:block;
  font-weight:400;
  color:rgba(90,74,58,.88);
}
.reflection-moon-magic small{
  display:block;
  color:rgba(155,119,104,.86);
  line-height:1.35;
}

@media(max-width:900px){
  .suite-grid{grid-template-columns:1fr;align-items:start}
  .wheel-panel{max-width:560px;min-height:auto;margin:0 auto;padding:58px 30px 70px}
  .medicine-wheel{width:min(100%,470px)}
  .wheel-room{width:30px;height:30px;font-size:.68rem}
  .wheel-season{min-width:104px;font-size:.62rem;padding:7px 8px}
  .wheel-season-autumn{left:-4%;top:-8%}.wheel-season-summer{right:-4%;top:-8%}.wheel-season-spring{right:-4%;bottom:-8%}.wheel-season-winter{left:-4%;bottom:-8%}
  .wheel-cardinal-north{top:4%}.wheel-cardinal-south{bottom:4%}.wheel-cardinal-east{right:2.8%}.wheel-cardinal-west{left:2.8%}
  .rose-compass-center{width:128px;height:128px}
  .you-are-here{margin-top:62px}
  .reflection-moon-magic{grid-template-columns:1fr;text-align:left}
  .reflection-moon-label{grid-row:auto;justify-self:start}
}

/* Release 0.4.5 — final medicine wheel updates and suite layout refinement */
.suite-grid{
  grid-template-columns:minmax(520px,680px) minmax(380px,500px);
  align-items:stretch;
  gap:34px;
}
.wheel-column{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.wheel-panel{
  width:100%;
  max-width:680px;
  flex:1;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:76px 66px 82px;
  overflow:visible;
  background:linear-gradient(145deg,rgba(255,253,249,.985),rgba(251,247,241,.995));
  border-color:rgba(216,168,79,.25);
  box-shadow:0 24px 64px rgba(109,78,65,.085), inset 0 0 0 1px rgba(255,255,255,.82);
}
.medicine-wheel{
  width:min(100%,540px);
  max-width:540px;
  overflow:visible;
  /* Two gold rings bracket the day-number circles: one inside the number ring and one outside it. */
  background:
    radial-gradient(circle at center,rgba(255,253,249,1) 0 24.5%,transparent 25.2%),
    radial-gradient(circle at center,transparent 0 38.6%,rgba(216,168,79,.58) 39%,rgba(216,168,79,.58) 39.8%,transparent 40.3%),
    radial-gradient(circle at center,transparent 0 47.6%,rgba(216,168,79,.58) 48%,rgba(216,168,79,.58) 48.8%,transparent 49.3%),
    linear-gradient(135deg,rgba(248,231,227,.28),rgba(255,253,249,.99) 48%,rgba(251,247,241,.98));
  box-shadow:inset 0 0 54px rgba(109,78,65,.045), inset 0 0 0 1px rgba(216,168,79,.065);
}
.wheel-compass-ring{display:none!important}
.wheel-axis{opacity:.25;background:linear-gradient(90deg,transparent,rgba(216,168,79,.17),transparent)}
.wheel-axis-vertical{height:62%}
.wheel-axis-horizontal{width:62%}
.wheel-room{
  width:40px;
  height:40px;
  font-size:.9rem;
  background:rgba(255,253,249,.995);
  border:1.5px solid rgba(216,168,79,.64);
  color:#5A4A3A;
  box-shadow:0 8px 18px rgba(109,78,65,.08), inset 0 1px 0 rgba(255,255,255,.94);
}
.wheel-room:hover{transform:translate(-50%,-50%) scale(1.035)}
.wheel-room.active{
  background:#f3d4cf;
  border-color:rgba(216,168,79,.86);
  box-shadow:0 0 0 4px rgba(243,212,207,.20),0 10px 20px rgba(109,78,65,.12);
}
.wheel-current-star{
  z-index:10;
  transform:translate(-50%,-50%);
  font-size:1.48rem;
  line-height:1;
  color:transparent;
  filter:drop-shadow(0 5px 8px rgba(109,78,65,.18));
}
.wheel-current-star:before{
  content:"✦";
  color:var(--gold);
  background:linear-gradient(135deg,#fff0bd,#d4a137 42%,#f9e4aa 68%,#a96f1d);
  -webkit-background-clip:text;
  background-clip:text;
}
.wheel-cardinal{
  z-index:4;
  font-size:.5rem;
  letter-spacing:.18em;
  color:rgba(90,74,58,.54);
  max-width:72px;
  text-align:center;
  white-space:nowrap;
}
.wheel-cardinal-north{top:2.6%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-south{bottom:2.6%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:1.9%;top:50%;transform:translateY(-50%) rotate(90deg)}
.wheel-cardinal-west{left:1.9%;top:50%;transform:translateY(-50%) rotate(-90deg)}
.wheel-season{
  z-index:6;
  min-width:132px;
  padding:9px 12px;
  background:rgba(255,253,249,.78);
  border:1px solid rgba(216,168,79,.16);
  box-shadow:0 10px 24px rgba(109,78,65,.045);
}
.wheel-season-autumn{left:-14.5%;top:-8.5%}
.wheel-season-summer{right:-14.5%;top:-8.5%}
.wheel-season-spring{right:-14.5%;bottom:-8.5%}
.wheel-season-winter{left:-14.5%;bottom:-8.5%}
.rose-compass-center{
  width:190px;
  height:190px;
  filter:drop-shadow(0 18px 22px rgba(109,78,65,.095));
}
.rose-compass-center:before,
.rose-compass-center:after,
.rose-compass-center .compass-spoke,
.rose-compass-center .rose-spiral,
.rose-compass-center .rose-bloom{display:none!important}
.rose-compass-svg{display:block;width:100%;height:100%;overflow:visible}
.rose-compass-svg .compass-points path{filter:drop-shadow(0 2px 2px rgba(109,78,65,.08))}
.rose-compass-svg .rose-petals ellipse{filter:drop-shadow(0 1px 1px rgba(109,78,65,.04))}
.you-are-here{
  margin:74px 0 0;
  position:relative;
  top:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  letter-spacing:.18em;
  color:rgba(90,74,58,.8);
}
.you-are-here:before{content:"✦";font-size:1rem;color:var(--gold)}
.wheel-legend-helper{
  margin:16px auto 0;
  max-width:360px;
  font-size:.82rem;
  line-height:1.45;
  color:rgba(155,119,104,.82);
}
.moon-card{display:none!important}
.journal-card{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.reflection-moon-magic{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 12px;
  align-items:center;
  margin:2px 0 4px;
  padding:14px 16px;
  border:1px solid rgba(216,168,79,.20);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(248,231,227,.38),rgba(255,253,249,.9));
}
.reflection-moon-label{
  grid-row:1 / span 2;
  align-self:center;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,253,249,.9);
  border:1px solid rgba(216,168,79,.18);
  font-family:Arial,sans-serif;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--rose);
}
.reflection-moon-magic strong{display:block;font-weight:400;color:rgba(90,74,58,.88)}
.reflection-moon-magic small{display:block;color:rgba(155,119,104,.86);line-height:1.35}

@media(max-width:900px){
  .suite-grid{grid-template-columns:1fr;align-items:start}
  .wheel-panel{max-width:560px;min-height:auto;margin:0 auto;padding:64px 30px 76px}
  .medicine-wheel{width:min(100%,470px)}
  .wheel-room{width:31px;height:31px;font-size:.68rem}
  .wheel-season{min-width:104px;font-size:.62rem;padding:7px 8px}
  .wheel-season-autumn{left:-4%;top:-9%}
  .wheel-season-summer{right:-4%;top:-9%}
  .wheel-season-spring{right:-4%;bottom:-9%}
  .wheel-season-winter{left:-4%;bottom:-9%}
  .wheel-cardinal-north{top:2.6%}
  .wheel-cardinal-south{bottom:2.6%}
  .wheel-cardinal-east{right:1.8%}
  .wheel-cardinal-west{left:1.8%}
  .rose-compass-center{width:138px;height:138px}
  .you-are-here{margin-top:66px}
  .reflection-moon-magic{grid-template-columns:1fr;text-align:left}
  .reflection-moon-label{grid-row:auto;justify-self:start}
}


/* Release 0.4.5b — Wheel proof patch only
   Center compass proof: app.js now renders .rose-compass-center with the temporary ROSE COMPASS 0.4.5 label.
   Ring correction: number circles sit BETWEEN exactly two gold rings: one inner, one outer. */
.wheel-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
  padding:42px 42px 54px;
}
.medicine-wheel{
  position:relative;
  width:min(100%,620px);
  max-width:620px;
  aspect-ratio:1;
  margin:0 auto;
  overflow:visible;
  border-radius:30px;
  background:
    radial-gradient(circle at center, transparent 0 38.9%, rgba(216,168,79,.66) 39.15%, rgba(216,168,79,.66) 39.75%, transparent 40.05%),
    radial-gradient(circle at center, transparent 0 47.55%, rgba(216,168,79,.66) 47.85%, rgba(216,168,79,.66) 48.45%, transparent 48.75%),
    radial-gradient(circle at center, rgba(255,253,249,.96) 0 30%, rgba(255,253,249,.76) 30.4%, transparent 30.8%),
    linear-gradient(145deg, rgba(255,253,249,.995), rgba(251,247,241,.985));
  box-shadow:inset 0 0 58px rgba(109,78,65,.045);
}
.wheel-compass-ring,
.wheel-rose{display:none!important}
.wheel-axis{opacity:.16;background:linear-gradient(90deg,transparent,rgba(216,168,79,.2),transparent)}
.wheel-axis-vertical{height:58%}
.wheel-axis-horizontal{width:58%}
.wheel-room{
  width:44px;
  height:44px;
  left:var(--x);
  top:var(--y);
  z-index:7;
  background:rgba(255,253,249,.995);
  border:1.5px solid rgba(216,168,79,.68);
  color:#5A4A3A;
  font-size:.96rem;
  box-shadow:0 10px 20px rgba(109,78,65,.075), inset 0 1px 0 rgba(255,255,255,.95);
}
.wheel-room.active{
  background:rgba(255,253,249,.995);
  border-color:rgba(216,168,79,.72);
  box-shadow:0 10px 20px rgba(109,78,65,.075), inset 0 0 0 2px rgba(255,255,255,.92);
  animation:none;
}
.wheel-room.active:after{content:none!important}
.wheel-current-star{
  position:absolute;
  left:var(--x);
  top:var(--y);
  z-index:10;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  transform:translate(-50%,-50%);
  color:#D4AF37;
  font-size:1.18rem;
  line-height:1;
  text-shadow:0 2px 8px rgba(109,78,65,.12);
  pointer-events:none;
}
.wheel-cardinal{
  z-index:8;
  color:#4B3D2A;
  font-size:.74rem;
  letter-spacing:.13em;
  font-family:Georgia,"Times New Roman",serif;
  opacity:.84;
}
.wheel-cardinal-north{top:6.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-south{bottom:6.5%;left:50%;transform:translateX(-50%)}
.wheel-cardinal-east{right:5.8%;top:50%;transform:translateY(-50%)}
.wheel-cardinal-west{left:5.8%;top:50%;transform:translateY(-50%)}
.wheel-season{
  z-index:9;
  width:118px;
  min-width:118px;
  padding:10px 11px;
  background:rgba(255,253,249,.88);
  border:1px solid rgba(216,168,79,.22);
  border-radius:12px;
  box-shadow:0 12px 24px rgba(109,78,65,.055);
  font-size:.66rem;
}
.wheel-season em{font-size:1.18rem;margin-bottom:2px}
.wheel-season small{font-size:.48rem;letter-spacing:.08em;color:#4B3D2A}
.wheel-season-autumn{left:3.4%;top:3.4%}
.wheel-season-summer{right:3.4%;top:3.4%}
.wheel-season-spring{right:3.4%;bottom:3.4%}
.wheel-season-winter{left:3.4%;bottom:3.4%}
.rose-compass-center{
  position:absolute;
  z-index:4;
  left:50%;
  top:50%;
  width:190px;
  height:190px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  filter:drop-shadow(0 18px 22px rgba(109,78,65,.095));
}
.rose-compass-center:before,
.rose-compass-center:after{content:none!important;display:none!important}
.rose-compass-svg{display:block;width:100%;height:100%;overflow:visible}
.rose-compass-svg .compass-points path{filter:drop-shadow(0 2px 2px rgba(109,78,65,.08))}
.rose-compass-svg .rose-petals ellipse{filter:drop-shadow(0 1px 1px rgba(109,78,65,.04))}

.you-are-here{margin-top:42px;position:relative;top:0;z-index:11}
.you-are-here-helper{margin-top:8px}
@media(max-width:900px){
  .wheel-panel{padding:34px 22px 48px}
  .medicine-wheel{width:min(100%,520px);border-radius:26px}
  .wheel-room{width:34px;height:34px;font-size:.76rem}
  .wheel-current-star{width:34px;height:34px;font-size:1rem}
  .rose-compass-center{width:136px;height:136px}
  .rose-compass-proof{font-size:.46rem;top:calc(100% + 4px)}
  .wheel-season{width:96px;min-width:96px;padding:7px 8px;font-size:.56rem}
  .wheel-season small{font-size:.42rem}
  .wheel-cardinal{font-size:.58rem}
}

/* Release 0.4.10 — DOM-tied medicine wheel rings
   The two gold rings are now real elements tied to the number radius.
   Number circles sit exactly between the inner and outer ring. */
.medicine-wheel{
  --day-radius:39.5%;
  --day-size:34px;
}

.wheel-number-ring-inner{
  width:calc((var(--day-radius) * 2) - var(--day-size) - 12px);
  height:calc((var(--day-radius) * 2) - var(--day-size) - 12px);
}

.wheel-number-ring-outer{
  width:calc((var(--day-radius) * 2) + var(--day-size) + 12px);
  height:calc((var(--day-radius) * 2) + var(--day-size) + 12px);
}

.rose-compass-center{
  width:230px !important;
  height:230px !important;
}

.rose-compass-proof{
  display:none !important;
}


/* Release 0.4.9d — Medicine wheel radius lock
   One shared geometry controls the day buttons and both gold rings.
   Do not add independent ring sizes below this block. */
.medicine-wheel{
  --day-radius:31%;
  --ring-base:62%;
  --day-size:34px;
  --ring-offset:58px;
}

.wheel-room{
  width:var(--day-size) !important;
  height:var(--day-size) !important;
}

.wheel-number-ring{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  border:2px solid rgba(216,168,79,.72) !important;
  border-radius:50% !important;
  transform:translate(-50%,-50%) !important;
  pointer-events:none !important;
  z-index:2 !important;
}

.wheel-number-ring-inner{
  width:calc(var(--ring-base) - var(--ring-offset)) !important;
  height:calc(var(--ring-base) - var(--ring-offset)) !important;
}

.wheel-number-ring-outer{
  width:calc(var(--ring-base) + var(--ring-offset)) !important;
  height:calc(var(--ring-base) + var(--ring-offset)) !important;
}

.rose-compass-center{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:min(52%,260px) !important;
  height:min(52%,260px) !important;
  transform:translate(-50%,-50%) !important;
  object-fit:contain !important;
  border-radius:50% !important;
  z-index:4 !important;
  pointer-events:none !important;
  filter:drop-shadow(0 18px 22px rgba(109,78,65,.095)) !important;
}

.rose-compass-proof,
.rose-compass-svg{
  display:none !important;
}

@media(max-width:900px){
  .medicine-wheel{
    --day-radius:31%;
    --ring-base:62%;
    --day-size:30px;
    --ring-offset:50px;
  }

  .rose-compass-center{
    width:min(50%,210px) !important;
    height:min(50%,210px) !important;
  }
}



/* Flowtel beta testing tools */
.beta-login-card{
  margin-top:16px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.55);
  text-align:left;
}

.beta-login-card summary{
  cursor:pointer;
  font-family:Arial,sans-serif;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--rose);
}

.beta-login-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:12px;
}

.beta-login-button{
  margin:0;
  padding:10px 12px;
  font-size:.64rem;
  letter-spacing:.08em;
  box-shadow:none;
}

.beta-practitioner{
  background:rgba(248,231,227,.78);
}

.beta-guest{
  background:rgba(255,253,249,.95);
}


/* Release 0.5.2 — checkout completion + reflection log polish */
.checkout-complete-scene {
  text-align: center;
  padding: clamp(3rem, 8vw, 6rem);
}

.checkout-complete-scene h2 {
  max-width: 720px;
  margin: 0 auto 1rem;
}

.checkout-complete-scene .suite-subline {
  margin-bottom: 2rem;
}

.visit-reflection small {
  display: inline-block;
  margin-bottom: .25rem;
  opacity: .68;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .68rem;
}


/* Release 0.6.0 — Squarespace Identity Bridge */
.member-bridge-card,
.dev-login-card {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(151, 112, 76, .18);
  border-radius: 18px;
  background: rgba(255, 250, 242, .58);
}

.dev-login-card summary {
  cursor: pointer;
  font-size: .78rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--soft-brown);
}

.member-bridge-card button,
.dev-login-card button {
  margin-top: .75rem;
}


/* Release 0.6.1 — Manual bridge + practitioner relationship UI */
.practitioner-card{
  background:rgba(255,253,249,.9);
  border:1px solid var(--line);
  border-radius:24px;
  padding:20px;
  text-align:left;
  box-shadow:0 12px 32px rgba(109,78,65,.07);
}
.practitioner-card h3{margin:.2rem 0 .5rem;}
.practitioner-directory{display:grid;gap:10px;margin-top:14px;}
.practitioner-directory.hidden{display:none;}
.practitioner-option{
  width:100%;
  text-align:left;
  background:rgba(248,231,227,.65);
  border:1px solid rgba(216,168,79,.35);
  color:var(--brown);
  border-radius:16px;
  padding:12px 14px;
}
.checkout-complete-scene h2{max-width:720px;margin-inline:auto;}



/* Release 0.6.2 — Explicit temporary bridge paths */
.bridge-question{
  margin-top: 1rem;
  color: var(--brown);
  opacity: .8;
  font-weight: 600;
}

#memberBridgeNewButton,
#memberBridgeReturningButton{
  margin-top: .7rem;
}

#memberBridgeReturningButton{
  background: transparent;
}
/* Release 0.6.2b — Suite practitioner card placement */
.suite-scene > .practitioner-card{
  width:min(100%,1068px);
  margin:18px auto 18px;
  text-align:left;
}

.suite-scene > .practitioner-card .secondary{
  width:auto;
  min-width:190px;
}

@media (max-width: 900px){
  .suite-scene > .practitioner-card{
    width:100%;
  }
}


/* Release 0.6.3 — Hospitality polish */
.wheel-cardinal{display:none!important}

.wheel-panel{
  display:flex;
  flex-direction:column;
  align-items:center;
}

.wheel-current-room{
  width:100%;
  margin-top:18px;
  text-align:center;
}

.wheel-current-room strong{
  display:block;
  font-size:clamp(1.35rem,2vw,1.9rem);
}

.suite-rail .current-room-card{display:none!important}

.practitioner-card,
.journal-card{
  width:100%;
  max-width:none;
}

.practitioner-card{
  margin-top:18px;
}

.cycle-data-link{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  margin-top:12px;
  width:100%;
  color:var(--brown);
  text-decoration:none;
  border:1px solid rgba(216,168,79,.36);
  border-radius:999px;
  padding:12px 16px;
  background:rgba(255,253,249,.74);
  font-size:.82rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.cycle-data-link:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(109,78,65,.12);
}

/* Keep the practitioner card visually aligned with Reflection */
.practitioner-card{
  background:rgba(255,253,249,.86);
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:0 16px 42px rgba(109,78,65,.10);
  padding:24px;
}

.practitioner-directory{
  display:grid;
  gap:12px;
}

.practitioner-option{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:12px;
  text-align:left;
}

.practitioner-option::before{
  content:"";
  width:44px;
  height:44px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#fff 0 20%,#f3d4cf 45%,#d8a84f 100%);
  border:1px solid rgba(216,168,79,.5);
}


/* Release 0.6.7 — Wheel cleanup */
.medicine-wheel{
  background:
    radial-gradient(circle at center,rgba(255,253,249,.96) 0 34%,rgba(255,255,255,.72) 35% 38%,transparent 39%),
    linear-gradient(135deg,rgba(248,231,227,.40),rgba(255,253,249,.92) 46%,rgba(251,247,241,.92)) !important;
}
.wheel-compass-ring,
.wheel-axis,
.wheel-axis-x,
.wheel-axis-y{
  display:none !important;
}
.wheel-current-star{
  display:none !important;
}
.wheel-number-ring{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  border:2px solid rgba(216,168,79,.72) !important;
  border-radius:50% !important;
  transform:translate(-50%,-50%) !important;
  pointer-events:none !important;
  z-index:2 !important;
}
.wheel-number-ring-inner{
  width:calc(var(--ring-base) - var(--ring-offset)) !important;
  height:calc(var(--ring-base) - var(--ring-offset)) !important;
}
.wheel-number-ring-outer{
  width:calc(var(--ring-base) + var(--ring-offset)) !important;
  height:calc(var(--ring-base) + var(--ring-offset)) !important;
}


/* Release 0.6.8 — final wheel/card cleanup */
.medicine-wheel{
  background:
    radial-gradient(circle at center,rgba(255,253,249,.96) 0 26%,rgba(255,255,255,.68) 27% 31%,transparent 32%),
    linear-gradient(135deg,rgba(248,231,227,.34),rgba(255,253,249,.92) 46%,rgba(251,247,241,.88)) !important;
}
.wheel-current-star{display:none!important}
@media(max-width:900px){
  .wheel-season-autumn,.wheel-season-summer{top:-8px!important}
  .wheel-season-winter,.wheel-season-spring{bottom:-8px!important}
}


/* Release 0.6.9 — final wheel, concierge card, and mobile polish */
.wheel-number-ring{
  border-width:3px !important;
  border-color:rgba(216,168,79,.76) !important;
}

.wheel-room.active::after{
  content:"✦";
  position:absolute;
  left:50%;
  top:-17px;
  transform:translateX(-50%);
  color:var(--gold);
  font-size:1rem;
  line-height:1;
  filter:drop-shadow(0 3px 6px rgba(109,78,65,.18));
  pointer-events:none;
}

.concierge-card-eyebrow{
  margin:0 0 16px;
}

.concierge-note h3{
  display:none;
}

.concierge-note #witnessText strong{
  font-size:1.12rem;
}

.concierge-note #witnessText button.secondary{
  background:rgba(255,253,249,.8);
}

.concierge-note-by{
  color:var(--soft-brown);
  font-style:italic;
}

.wakeup-button{
  margin-top:10px;
}

@media(max-width:900px){
  .medicine-wheel{
    --day-radius:29%;
    --ring-base:58%;
    --day-size:24px;
    --ring-offset:42px;
    width:min(100%,430px) !important;
  }

  .wheel-room{
    font-size:.58rem !important;
  }

  .wheel-season{
    min-width:92px !important;
    padding:10px 8px !important;
    background:rgba(255,253,249,.82);
    border:1px solid rgba(216,168,79,.18);
    border-radius:14px;
  }

  .wheel-season-autumn,.wheel-season-summer{
    top:-26px !important;
  }

  .wheel-season-winter,.wheel-season-spring{
    bottom:-26px !important;
  }

  .wheel-season-autumn,.wheel-season-winter{
    left:-2px !important;
  }

  .wheel-season-summer,.wheel-season-spring{
    right:-2px !important;
  }

  .rose-compass-center{
    width:min(46%,185px) !important;
    height:min(46%,185px) !important;
  }
}


/* Release 0.7.0 — suite wheel and concierge polish */
.wheel-number-ring{
  border-width:4px !important;
  border-color:rgba(216,168,79,.80) !important;
}
.wheel-room.active::after{
  content:"✦" !important;
  display:block !important;
  position:absolute;
  left:50%;
  top:-18px;
  transform:translateX(-50%);
  color:var(--gold);
  font-size:1.15rem;
  line-height:1;
  z-index:9;
  filter:drop-shadow(0 3px 6px rgba(109,78,65,.22));
  pointer-events:none;
}
.wheel-current-star{display:none!important}
.suite-scene{
  position:relative;
}
.suite-scene::before{
  content:"";
  position:absolute;
  left:50%;
  top:34px;
  width:190px;
  height:190px;
  transform:translateX(-50%);
  background:url("../assets/rose_compass_center.png") center/contain no-repeat;
  opacity:.16;
  mix-blend-mode:multiply;
  pointer-events:none;
  z-index:0;
}
.suite-scene > .eyebrow,
.suite-scene > h2,
.suite-scene > .suite-subline{
  position:relative;
  z-index:1;
}
.concierge-card-eyebrow{
  font-family:Arial,sans-serif;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--rose);
}
.concierge-note #witnessText strong{
  font-size:1.08rem;
}
.concierge-note #witnessText strong,
.concierge-note #witnessText span,
.concierge-note #witnessText small{
  line-height:1.55;
}
.wakeup-button{
  display:inline-flex;
  width:auto;
  margin-top:12px;
}
@media(max-width:900px){
  .medicine-wheel{
    --day-radius:27.5%;
    --ring-base:55%;
    --day-size:22px;
    --ring-offset:39px;
    width:min(100%,400px) !important;
  }
  .wheel-room{
    width:var(--day-size) !important;
    height:var(--day-size) !important;
    font-size:.54rem !important;
  }
  .wheel-season{
    min-width:86px !important;
    font-size:.56rem !important;
  }
  .wheel-season small{font-size:.39rem!important}
  .wheel-season-autumn,.wheel-season-summer{top:-38px!important}
  .wheel-season-winter,.wheel-season-spring{bottom:-38px!important}
  .wheel-season-autumn,.wheel-season-winter{left:-4px!important}
  .wheel-season-summer,.wheel-season-spring{right:-4px!important}
  .suite-scene::before{
    top:26px;
    width:138px;
    height:138px;
  }
}


/* Release 0.7.1 — final design refinement before visual freeze */

/* Keep the decorative rose in lobby/lounge, but remove it from the Suite dashboard. */
.flowtel-shell:has(#suiteScene.active) > .rose-corner{
  display:none !important;
}

/* Remove the suite header watermark completely. */
.suite-scene::before,
.suite-scene::after{
  content:none !important;
  display:none !important;
}

/* Clean medicine wheel: only two gold rings, no extra compass guide rings/axes. */
.wheel-compass-ring,
.wheel-axis,
.wheel-axis-x,
.wheel-axis-y,
.wheel-cardinal,
.wheel-current-star{
  display:none !important;
}

.medicine-wheel{
  background:radial-gradient(circle at center,rgba(255,253,249,.96) 0 28%,rgba(248,231,227,.30),rgba(255,253,249,.92) 47%,rgba(251,247,241,.90)) !important;
}

.wheel-number-ring{
  border-width:2.5px !important;
  border-color:rgba(216,168,79,.78) !important;
  box-shadow:none !important;
}

/* Day bubbles: slightly stronger. */
.wheel-room{
  border-width:2px !important;
  border-color:rgba(216,168,79,.74) !important;
  font-weight:500 !important;
  box-shadow:0 7px 16px rgba(109,78,65,.075), inset 0 1px 0 rgba(255,255,255,.94) !important;
}

/* One star only: the active-day marker. */
.you-are-here::before{
  content:none !important;
  display:none !important;
}

.wheel-room.active::before{
  content:none !important;
  display:none !important;
}

.wheel-room.active::after{
  content:"✦" !important;
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:-18px !important;
  transform:translateX(-50%) !important;
  color:var(--gold) !important;
  font-size:1.22rem !important;
  line-height:1 !important;
  z-index:12 !important;
  filter:drop-shadow(0 3px 6px rgba(109,78,65,.22)) !important;
  pointer-events:none !important;
}

/* Mobile wheel breathing room. */
@media(max-width:700px){
  .wheel-panel{
    padding:68px 18px 84px !important;
  }

  .medicine-wheel{
    width:min(100%,330px) !important;
  }

  .wheel-season{
    transform:scale(.86) !important;
  }

  .wheel-season-autumn,
  .wheel-season-summer{
    top:-26px !important;
  }

  .wheel-season-winter,
  .wheel-season-spring{
    bottom:-26px !important;
  }

  .wheel-room{
    width:28px !important;
    height:28px !important;
    font-size:.60rem !important;
  }

  .rose-compass-center{
    width:min(52%,170px) !important;
    height:min(52%,170px) !important;
  }

  .wheel-room.active::after{
    top:-16px !important;
    font-size:1.05rem !important;
  }
}


/* Release 0.7.2 — mentor language, wheel marker lock, and concierge notes */
.practitioner-card .eyebrow{
  letter-spacing:.15em;
}

.wheel-number-ring{
  border-width:3.2px !important;
}

/* Hide all older pseudo-element star attempts. The only marker now is .wheel-star-marker. */
.wheel-room.active::after,
.wheel-room.active::before{
  content:none !important;
  display:none !important;
}

.wheel-star-marker{
  position:absolute !important;
  left:var(--star-x) !important;
  top:var(--star-y) !important;
  transform:translate(-50%,-50%) !important;
  z-index:14 !important;
  color:var(--gold) !important;
  font-size:1.28rem !important;
  line-height:1 !important;
  filter:drop-shadow(0 3px 7px rgba(109,78,65,.25)) !important;
  pointer-events:none !important;
}

.wheel-room.active{
  background:rgba(216,168,79,.18) !important;
  border-color:rgba(216,168,79,.96) !important;
  box-shadow:
    0 0 0 4px rgba(216,168,79,.14),
    0 9px 20px rgba(109,78,65,.11),
    inset 0 1px 0 rgba(255,255,255,.96) !important;
}

.you-are-here::before{
  content:"✦" !important;
  display:inline-block !important;
  color:var(--gold) !important;
  font-size:1rem !important;
  line-height:1 !important;
}

.concierge-notes-scroll{
  max-height:220px;
  overflow:auto;
  padding:12px;
  margin:12px 0;
  border:1px solid rgba(109,78,65,.10);
  border-radius:18px;
  background:rgba(255,253,249,.58);
}

.concierge-note-entry{
  padding:10px 0;
  border-bottom:1px solid rgba(109,78,65,.08);
}

.concierge-note-entry:last-child{
  border-bottom:0;
}

.concierge-note-entry p{
  margin:6px 0 0;
  line-height:1.55;
}

.concierge-note-entry small{
  display:block;
  color:var(--soft-brown);
  font-size:.72rem;
  margin-top:3px;
}

@media(max-width:700px){
  .wheel-star-marker{
    font-size:1.08rem !important;
  }
  .wheel-number-ring{
    border-width:3px !important;
  }
}


/* Release 0.7.4 — stay logic and hospitality polish */
.video-lounge-card{
  text-align:center !important;
  padding:28px !important;
}

.video-lounge-card h3{
  margin:8px 0 0 !important;
}

.checkout-card.checked-out textarea,
.checkout-card.checked-out button{
  display:none !important;
}

.checkout-note-saved{
  margin-top:16px;
  padding:16px 18px;
  border:1px solid rgba(109,78,65,.12);
  border-radius:18px;
  background:rgba(255,253,249,.72);
  font-style:italic;
  color:var(--soft-brown) !important;
}

.wheel-panel{
  padding-top:56px !important;
  padding-bottom:72px !important;
}

.wheel-number-ring{
  border-width:2.4px !important;
}

.wheel-number-ring-inner{
  width:calc(var(--ring-base) - (var(--ring-offset) * .72)) !important;
  height:calc(var(--ring-base) - (var(--ring-offset) * .72)) !important;
}

.wheel-room{
  border-width:2.35px !important;
}

.wheel-star-marker{
  font-size:1.36rem !important;
}

@media(max-width:700px){
  .wheel-panel{
    padding-top:86px !important;
    padding-bottom:104px !important;
  }

  .medicine-wheel{
    --day-radius:34%;
    --ring-base:68%;
    --day-size:28px;
    --ring-offset:48px;
    width:min(100%,340px) !important;
  }

  .wheel-number-ring-inner{
    width:calc(var(--ring-base) - (var(--ring-offset) * .58)) !important;
    height:calc(var(--ring-base) - (var(--ring-offset) * .58)) !important;
  }

  .rose-compass-center{
    width:min(45%,160px) !important;
    height:min(45%,160px) !important;
  }
}

.suite-day-one{
  margin-top:.65rem;
  font-size:.95rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(109,78,65,.72);
}

/* Release 0.7.6 — Flowtel time fields */
.suite-flowtel-date{
  margin-top:.65rem;
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(109,78,65,.68);
}

.lounge-flowtel-date{
  text-align:center;
  margin:0 auto 1.25rem;
}

/* Release 0.8.1 — Cycle Data card + Lounge video placeholder restoration */
.cycle-data-card{
  padding:16px 18px;
  text-align:left;
  background:linear-gradient(135deg,rgba(255,253,249,.94),rgba(248,231,227,.30));
  border:1px solid rgba(216,168,79,.18);
  border-radius:22px;
  box-shadow:0 12px 34px rgba(109,78,65,.055);
}
.cycle-data-card .eyebrow{
  margin-top:0;
  margin-bottom:8px;
}
.cycle-data-card p{
  margin:7px 0;
  color:var(--soft-brown);
  line-height:1.45;
}
.cycle-data-card strong{
  color:var(--brown);
  font-weight:400;
}
.cycle-welcome-back{
  margin-top:10px!important;
  padding-top:10px;
  border-top:1px solid rgba(109,78,65,.10);
  font-style:italic;
}
.suite-day-one:empty{display:none}
.video-lounge-card .video-placeholder{
  display:grid;
  place-items:center;
  min-height:164px;
  margin-top:18px;
  border:1px solid rgba(216,168,79,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(248,231,227,.34),rgba(255,253,249,.82));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.62);
}
.video-lounge-card .video-placeholder span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:14px 26px;
  border:1px solid rgba(109,78,65,.12);
  border-radius:999px;
  background:rgba(255,253,249,.82);
  color:var(--soft-brown);
  font-size:1.1rem;
  font-style:italic;
}

/* Release 0.9.0 — Choose Your Mentor directory */
.mentor-consent-copy{
  margin:4px 0 14px;
  max-width:780px;
}

.mentor-directory-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.mentor-option-card{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:14px;
  align-items:start;
  padding:16px;
  border:1px solid rgba(216,168,79,.28);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,253,249,.94),rgba(248,231,227,.32));
  box-shadow:0 12px 30px rgba(109,78,65,.07);
}

.mentor-avatar{
  width:56px;
  height:56px;
  border-radius:50%;
  overflow:hidden;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,168,79,.48);
  background:radial-gradient(circle at 35% 30%,#fff 0 20%,#f3d4cf 45%,#d8a84f 100%);
  color:var(--brown);
  font-family:Georgia,serif;
  font-size:1rem;
  letter-spacing:.08em;
}

.mentor-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mentor-option-body h4{
  margin:.1rem 0 .35rem;
  font-family:Georgia,serif;
  color:var(--brown);
  font-size:1.1rem;
}

.mentor-option-body p{
  margin:.25rem 0;
}

.mentor-option-body small{
  display:block;
  margin-top:.45rem;
  color:rgba(109,78,65,.68);
}

.mentor-label{
  margin:0!important;
  font-family:Arial,sans-serif;
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--rose);
}

.mentor-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:.7rem;
}

.mentor-tags span{
  display:inline-flex;
  border:1px solid rgba(216,168,79,.28);
  border-radius:999px;
  padding:5px 9px;
  background:rgba(255,253,249,.72);
  font-size:.7rem;
  color:var(--brown);
}

.mentor-choice-button{
  grid-column:1 / -1;
  width:auto;
  justify-self:start;
  margin-top:2px;
  padding:10px 15px;
}

@media(max-width:780px){
  .mentor-directory-grid{grid-template-columns:1fr}
  .mentor-option-card{grid-template-columns:48px 1fr}
  .mentor-avatar{width:48px;height:48px}
}

/* Release 0.9.2 — latest suite polish */
.lounge-scene #backToSuiteButton{
  display:block;
  width:min(100%,760px);
  max-width:760px;
  margin:18px auto 0;
}

/* Release 0.9.5 — clickable seasonal cards repair.
   Earlier medicine-wheel styling intentionally disabled pointer events on seasonal labels.
   These are now links into anonymous seasonal Flow Map views, so they must receive clicks. */
.wheel-season{
  text-decoration:none !important;
  color:inherit !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  user-select:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.wheel-season:hover,.wheel-season:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(217,173,79,.62) !important;
  box-shadow:0 16px 38px rgba(111,75,64,.12) !important;
  outline:none;
}

/* Release 0.9.6 — Actual vs Recorded Cycle Day */
.cycle-key-feedback{
  max-width:360px;
  margin:12px auto 0;
  color:var(--muted);
  font-size:.96rem;
  line-height:1.55;
}
.cycle-data-status{
  display:inline-block;
  margin-left:6px;
  padding:3px 9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,248,242,.78);
  color:var(--rose);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.cycle-accuracy-message{
  margin-top:8px;
  padding:10px 12px;
  border:1px solid rgba(209,178,112,.35);
  border-radius:16px;
  background:rgba(255,250,238,.72);
  color:var(--brown);
}


/* Release 0.9.7 — Cycle Data Pill Rendering Repair */
.cycle-data-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:10px 0 8px;
}
.cycle-data-grid p{
  margin:0;
  padding:12px 10px;
  border:1px solid rgba(209,178,112,.32);
  border-radius:18px;
  background:rgba(255,250,246,.72);
}
.cycle-data-grid span{
  display:block;
  color:var(--rose);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cycle-data-grid strong{
  display:block;
  margin-top:3px;
  color:var(--brown);
  font-size:1.35rem;
  line-height:1;
}
.cycle-data-difference{
  margin:4px 0 0;
}
@media(max-width:640px){
  .cycle-data-grid{grid-template-columns:1fr;}
}

/* Release 0.9.10 — final suite alignment */
.suite-moon-magic-pill{
  width:100%;
  max-width:660px;
  margin:0 auto 16px;
}

.suite-moon-magic-pill small{
  margin:0;
}

.suite-scene > .practitioner-card{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.journal-card #reflectionMoonMagic{
  display:none !important;
}

/* Release 0.9.12 — Moon Magic lives inside the Medicine Wheel card */
.wheel-panel .suite-moon-magic-pill{
  width:100%;
  max-width:none;
  margin:0 0 24px;
  align-self:stretch;
}
.wheel-panel .medicine-wheel{
  margin-top:8px;
}
@media(max-width:700px){
  .wheel-panel .suite-moon-magic-pill{
    margin-bottom:20px;
  }
}

/* Release 0.9.13 — Moon Magic line break polish */
.suite-moon-magic-pill .moon-theme-line,
.suite-moon-magic-pill .moon-next-new-moon{
  display:block;
}
.suite-moon-magic-pill .moon-next-new-moon{
  margin-top:2px;
}

/* Release 0.9.17 — reflection sharing + mentor scheduling + Flow Map access */
.powder-share-control{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:12px 0 8px;
  color:var(--soft-brown);
  font-family:Arial,sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.powder-share-control input{
  margin-top:2px;
  accent-color:#c97974;
}
.powder-share-note{
  margin:.25rem 0 1rem;
  color:rgba(109,78,65,.64);
  font-size:.9rem;
  line-height:1.4;
}
.mentor-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.mentor-card-actions > *{
  flex:1 1 210px;
}
.mentor-schedule-button{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  text-decoration:none;
  min-height:42px;
  border-radius:999px;
  border:1px solid rgba(216,168,79,.32);
  padding:10px 18px;
  font-family:Arial,sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--brown);
}
.mentor-schedule-button[aria-disabled="true"]{
  opacity:.65;
}
.suite-flow-map-link{
  margin-top:14px;
}

/* Release 0.9.18 — master Powder Room sharing setting */
.powder-master-setting{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px 18px;
  align-items:center;
  margin:14px 0 16px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,253,250,.72);
}
.powder-master-setting p{
  margin:0;
}
.powder-master-setting .eyebrow{
  margin:0 0 7px;
}
.powder-master-toggle{
  margin:0;
  white-space:nowrap;
}
.powder-share-status{
  grid-column:1/-1;
  margin:0;
  color:var(--muted);
  font-size:.92rem;
  font-style:italic;
}
.checkout-share-note{
  margin:10px 0 14px;
}
@media(max-width:720px){
  .powder-master-setting{grid-template-columns:1fr}
  .powder-master-toggle{justify-content:flex-start}
}

/* Release 0.9.19 — Suite Flow Map button + mobile wheel containment polish */
.suite-flow-map-link--below-room{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:min(100%,320px);
  margin:18px auto 0;
}
.wheel-current-room .suite-flow-map-link{
  display:none !important;
}
@media(max-width:700px){
  .wheel-panel{
    width:min(100%,390px) !important;
    max-width:390px !important;
    padding:92px 14px 108px !important;
    overflow:visible !important;
  }
  .medicine-wheel{
    width:min(100%,342px) !important;
    margin-top:4px !important;
  }
  .wheel-room{
    width:32px !important;
    height:32px !important;
    font-size:.72rem !important;
  }
  .wheel-star-marker{
    font-size:1.18rem !important;
    transform:translate(-50%,-50%) !important;
  }
  .wheel-season{
    width:100px !important;
    min-width:100px !important;
    padding:7px 7px !important;
    font-size:.55rem !important;
    line-height:1.05 !important;
  }
  .wheel-season small{font-size:.39rem !important;letter-spacing:.07em !important;}
  .wheel-season-autumn{left:0 !important;top:-52px !important;}
  .wheel-season-summer{right:0 !important;top:-52px !important;}
  .wheel-season-winter{left:0 !important;bottom:-54px !important;}
  .wheel-season-spring{right:0 !important;bottom:-54px !important;}
  .you-are-here{
    margin-top:58px !important;
  }
  .suite-flow-map-link--below-room{
    width:100%;
    max-width:300px;
  }
}


/* Release 0.9.19 — reflection sharing copy + compact pill polish */
.powder-master-setting{
  max-width:980px;
  margin:12px auto 14px;
  padding:14px 18px;
  border-radius:20px;
}
.powder-master-setting .eyebrow{
  margin-bottom:5px;
}
.powder-master-setting p:not(.eyebrow):not(.powder-share-status){
  font-size:.98rem;
  line-height:1.35;
}
.powder-share-status:empty{
  display:none;
}
button,.secondary,.suite-flow-map-link,.mentor-schedule-button{
  min-height:38px;
  padding-top:9px;
  padding-bottom:9px;
}
.cycle-data-pill .cycle-data-box,
.cycle-data-card .cycle-data-box,
.room-stack article,
.concierge-note,
.room-card,
.practitioner-card{
  padding-top:18px;
  padding-bottom:18px;
}
@media(max-width:720px){
  .powder-master-setting{
    padding:13px 15px;
  }
  .powder-master-setting p:not(.eyebrow):not(.powder-share-status){
    font-size:.94rem;
  }
}


/* Release 0.9.20 — Mobile Medicine Wheel breathing room */
@media(max-width:700px){
  .wheel-panel{
    width:min(100%,390px) !important;
    max-width:390px !important;
    padding:112px 14px 126px !important;
    overflow:visible !important;
  }
  .wheel-panel .suite-moon-magic-pill{
    margin-bottom:72px !important;
  }
  .wheel-panel .medicine-wheel{
    width:min(100%,350px) !important;
    margin-top:0 !important;
    margin-bottom:10px !important;
  }
  .medicine-wheel{
    --day-size:30px;
  }
  .wheel-room{
    width:30px !important;
    height:30px !important;
    font-size:.70rem !important;
  }
  .wheel-number-ring{
    border-width:3px !important;
  }
  .wheel-season{
    width:96px !important;
    min-width:96px !important;
    padding:7px 7px !important;
    font-size:.54rem !important;
    line-height:1.05 !important;
  }
  .wheel-season em{
    font-size:1rem !important;
    margin-bottom:1px !important;
  }
  .wheel-season small{
    font-size:.38rem !important;
    letter-spacing:.065em !important;
  }
  .wheel-season-autumn{left:4px !important;top:-54px !important;}
  .wheel-season-summer{right:4px !important;top:-54px !important;}
  .wheel-season-winter{left:4px !important;bottom:-62px !important;}
  .wheel-season-spring{right:4px !important;bottom:-62px !important;}
  .rose-compass-center{
    width:min(42%,150px) !important;
    height:min(42%,150px) !important;
  }
  .wheel-star-marker{
    font-size:1.08rem !important;
  }
  .you-are-here{
    margin-top:66px !important;
  }
}

/* Release 0.9.21 — Suite spacing, conversational season language, and tracker polish */
.suite-rail{
  align-items:stretch !important;
}
.suite-rail .cycle-data-card,
.suite-rail .room-card{
  width:100% !important;
  min-height:0 !important;
  align-self:stretch !important;
}
.cycle-data-card{
  padding:18px 20px 22px !important;
}
.cycle-data-card .eyebrow{
  margin-bottom:10px !important;
}
.cycle-data-grid{
  margin:8px 0 10px !important;
}
.cycle-data-grid p{
  padding:12px 13px !important;
}
.cycle-data-grid span{
  font-family:Arial,sans-serif !important;
  font-size:.68rem !important;
  letter-spacing:.14em !important;
}
.cycle-data-grid strong{
  font-size:1.32rem !important;
}
.cycle-accuracy-message{
  margin:10px 0 0 !important;
  padding:12px 13px !important;
  line-height:1.38 !important;
}
.room-card{
  padding:18px 20px 22px !important;
  min-height:0 !important;
}
.room-card h3{
  margin-bottom:14px !important;
}
.room-stack{
  gap:12px !important;
}
.room-stack article{
  padding:13px 15px !important;
  min-height:0 !important;
}
.room-stack article p{
  margin-bottom:0 !important;
}
.wheel-panel{
  justify-content:flex-start !important;
  padding-top:38px !important;
  padding-bottom:48px !important;
}
.wheel-panel .suite-moon-magic-pill{
  margin:0 0 22px !important;
  padding:16px 20px !important;
  min-height:0 !important;
  align-items:start !important;
}
.reflection-moon-magic strong{
  margin:0 !important;
  line-height:1.14 !important;
}
.reflection-moon-magic small{
  margin-top:2px !important;
  line-height:1.24 !important;
}
.journal-card{
  padding:22px 24px 24px !important;
  margin-bottom:0 !important;
}
.journal-card textarea{
  min-height:150px !important;
}
.powder-master-setting{
  margin-bottom:14px !important;
}
.suite-scene > .practitioner-card{
  padding:22px 24px 24px !important;
  margin-top:22px !important;
}
.suite-scene > .practitioner-card p:last-child{
  margin-bottom:0 !important;
}
.suite-subline em{
  font-style:italic;
}
@media(max-width:900px){
  .wheel-panel{padding-top:32px !important;padding-bottom:44px !important;}
  .journal-card{padding:20px 18px 22px !important;}
  .suite-scene > .practitioner-card{padding:20px 18px 22px !important;}
}


/* Release 0.9.23 — Flow FM Initiation Hall entry */
.suite-button-link{display:flex;align-items:center;justify-content:center;width:100%;margin-top:18px;border:1px solid rgba(109,78,65,.14);border-radius:999px;padding:14px 20px;background:rgba(255,253,249,.78);color:var(--brown);font-family:Arial,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 10px 24px rgba(109,78,65,.06);text-decoration:none}
.suite-actions .suite-button-link{margin-top:18px}
@media(min-width:901px){.suite-actions{grid-template-columns:1fr 1fr 1fr}.suite-actions .suite-button-link{margin-top:18px}}

/* Release 0.10.0 — cycle confirmation + soft Powder Room sharing UX */
.cycle-reset-confirmation{
  margin:16px 0 18px;
  padding:18px;
  border:1px solid rgba(216,168,79,.34);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,253,249,.92),rgba(255,247,226,.68));
  box-shadow:0 18px 42px rgba(109,78,65,.08);
}
.cycle-reset-confirmation h3{
  margin:.1rem 0 .5rem;
  font-size:1.25rem;
  font-weight:400;
  color:var(--brown,#6d4e41);
}
.cycle-reset-confirmation p:not(.eyebrow){
  margin:0 0 14px;
  color:var(--soft-brown,#9d7468);
  line-height:1.45;
}
.cycle-reset-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.cycle-reset-actions button{
  width:100%;
}
.powder-share-inline{
  margin:12px 0 14px;
  color:rgba(109,78,65,.74);
  font-size:.94rem;
  font-style:italic;
  line-height:1.45;
}
.powder-share-inline button{
  display:inline;
  width:auto;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:rgba(109,78,65,.82);
  font:inherit;
  font-style:italic;
  text-transform:none;
  letter-spacing:0;
  text-decoration:none;
}
.powder-share-inline button:hover{
  color:var(--rose,#c97974);
}
.powder-master-setting--collapsed{
  margin-top:10px;
}
.powder-master-setting--collapsed .powder-share-control span{
  max-width:360px;
  text-align:left;
  line-height:1.35;
}
@media(max-width:640px){
  .cycle-reset-actions{grid-template-columns:1fr}
}


/* Release 0.10.6 — Practitioner, Reflection, Mentor Panel polish */
.powder-master-setting{
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  overflow:hidden;
  max-width:100%;
}
.powder-master-toggle,
.powder-share-control{
  width:100%;
  min-width:0;
  white-space:normal!important;
  flex-wrap:nowrap;
  align-items:flex-start;
}
.powder-master-toggle span,
.powder-share-control span{
  display:block;
  min-width:0;
  max-width:100%!important;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.35;
}
.powder-share-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:8px;
}
.powder-share-actions button{
  width:auto;
  min-width:110px;
  padding:9px 16px;
}
.suite-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:center;
  margin-top:22px!important;
}
.suite-actions .suite-button-link{margin-top:0!important}
.suite-scene > .practitioner-card{
  padding:18px 22px!important;
  margin-top:18px!important;
  margin-bottom:18px!important;
}
.suite-scene > .practitioner-card h3{
  margin:.1rem 0 .35rem!important;
}
.suite-scene > .practitioner-card p{
  line-height:1.42;
}
.mentor-card-actions{margin-top:10px}
.mentor-panel{
  width:100%;
  margin:18px 0;
  padding:22px 24px;
  text-align:left;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,253,249,.95),rgba(248,231,227,.34));
  box-shadow:0 16px 42px rgba(109,78,65,.08);
}
.mentor-panel h3{margin:.15rem 0 .5rem;font-weight:400;color:var(--brown)}
.mentor-panel > p:not(.eyebrow){color:var(--soft-brown);line-height:1.45}
.mentor-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.mentor-panel-grid article{border:1px solid rgba(109,78,65,.12);border-radius:18px;background:rgba(255,255,255,.56);padding:15px}
.mentor-panel-grid span{display:block;margin-bottom:8px;font-family:Arial,sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--rose)}
.mentor-panel-grid p{margin:0;color:var(--soft-brown);line-height:1.4}
@media(max-width:900px){.suite-actions,.mentor-panel-grid{grid-template-columns:1fr!important}.powder-share-actions{justify-content:stretch}.powder-share-actions button{width:100%}}


/* Release 0.10.17 — Lounge access to Profile View */
.profile-lounge-card{
  max-width:760px;
  margin:22px auto 0;
  padding:20px;
  text-align:left;
  background:rgba(255,255,255,.78);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 12px 34px rgba(109,78,65,.07);
}
.profile-lounge-card .eyebrow{margin-top:0}
.profile-lounge-card h3{margin:.2rem 0 .55rem}
.profile-lounge-card p{margin:0; color:var(--muted)}
.lounge-profile-link{width:100%; max-width:none; margin-top:18px}


/* Release 0.10.28 — Queendom return + Phase 1 link cleanup */
.suite-external-actions{
  display:flex;
  justify-content:center;
  margin:1.05rem 0 1.35rem;
}
.queendom-return-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:min(100%, 310px);
  padding:.88rem 1.2rem;
  border-radius:999px;
  border:1px solid rgba(116,83,71,.16);
  background:rgba(255,250,244,.86);
  color:#745347;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:.72rem;
  font-weight:800;
  box-shadow:0 14px 30px rgba(117,77,57,.05);
}
.queendom-return-link:hover{background:#f7e7e3;}
.profile-lounge-card.hidden{display:none!important;}
@media(max-width:640px){.queendom-return-link{width:100%;font-size:.68rem;letter-spacing:.18em;}}


/* Release 0.10.31 — mentor selection luxury pass + login loading overlay */
.flowtel-loading-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(251,247,241,.78);
  backdrop-filter:blur(7px);
  opacity:1;
  transition:opacity .2s ease;
}
.flowtel-loading-overlay.hidden{
  display:none;
}
.flowtel-loading-card{
  width:min(100%,420px);
  text-align:center;
  border:1px solid rgba(216,168,79,.28);
  border-radius:30px;
  background:rgba(255,253,249,.96);
  box-shadow:0 28px 76px rgba(109,78,65,.14);
  padding:34px 26px;
}
.flowtel-loading-moon{
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  margin:0 auto 14px;
  border-radius:50%;
  border:1px solid rgba(216,168,79,.34);
  color:var(--gold);
  font-size:2.4rem;
  animation:flowtelMoonPulse 1.8s ease-in-out infinite;
}
.flowtel-loading-card p{
  margin:0;
  color:var(--brown);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.05rem;
  line-height:1.45;
}
.flowtel-is-loading .auth-panel{
  pointer-events:none;
  opacity:.62;
}
@keyframes flowtelMoonPulse{
  0%,100%{transform:scale(1);opacity:.74}
  50%{transform:scale(1.06);opacity:1}
}
.mentor-directory-grid{
  grid-template-columns:1fr !important;
}
.mentor-option-card{
  grid-template-columns:76px 1fr !important;
  align-items:center !important;
  width:100% !important;
  padding:22px !important;
  border-color:rgba(216,168,79,.28) !important;
  background:linear-gradient(145deg,rgba(255,253,249,.98),rgba(251,247,241,.90)) !important;
  box-shadow:0 20px 54px rgba(109,78,65,.08) !important;
}
.mentor-avatar{
  width:64px !important;
  height:64px !important;
  border-color:rgba(216,168,79,.42) !important;
  background:rgba(255,253,249,.86) !important;
  overflow:hidden !important;
}
.mentor-avatar img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.mentor-option-body h4{
  font-size:clamp(1.3rem,2.2vw,1.75rem) !important;
  line-height:1.05 !important;
}
.mentor-option-body small,
.mentor-tags{
  display:none !important;
}
.mentor-choice-button{
  margin-top:14px !important;
}
@media(max-width:640px){
  .mentor-option-card{grid-template-columns:1fr !important;text-align:center !important;justify-items:center !important;}
}

.suite-actions #suiteClockInButton{order:-1}

/* Release 0.10.38 — Seamless Entry + Responsive Suite Temple Polish */
body.flowtel-is-loading{overflow:hidden}

.preparing-scene{
  min-height:560px;
  display:none;
  place-content:center;
  justify-items:center;
  padding:54px 20px;
}
.preparing-scene.active{display:grid}
.preparing-scene .eyebrow{margin:0 0 12px}
.preparing-bell{
  display:block;
  width:min(100%,420px);
  aspect-ratio:4/3;
  margin:18px auto 2px;
  object-fit:cover;
  object-position:center 70%;
  filter:drop-shadow(0 24px 34px rgba(109,78,65,.10));
}
.preparing-note{margin:0;color:var(--soft-brown);font-size:1rem;line-height:1.5}

.suite-arrival{
  position:relative;
  width:min(100%,920px);
  margin:0 auto 26px;
  padding:24px clamp(18px,4vw,44px) 22px;
  border:1px solid rgba(216,168,79,.22);
  border-radius:30px;
  background:
    radial-gradient(circle at 50% -18%,rgba(216,168,79,.16),transparent 42%),
    linear-gradient(180deg,rgba(255,253,249,.96),rgba(248,231,227,.28));
  box-shadow:0 22px 60px rgba(109,78,65,.08),inset 0 0 0 1px rgba(255,255,255,.74);
  overflow:hidden;
}
.suite-arrival::before,.suite-arrival::after{
  content:"";
  position:absolute;
  top:18px;
  bottom:18px;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(216,168,79,.44),transparent);
}
.suite-arrival::before{left:18px}.suite-arrival::after{right:18px}
.suite-arrival-emblem{
  display:block;
  width:88px;
  height:64px;
  margin:0 auto -2px;
  object-fit:contain;
  filter:drop-shadow(0 10px 18px rgba(109,78,65,.10));
}
.suite-arrival .eyebrow{margin:4px 0 10px}
.suite-arrival .suite-subline{margin:13px auto 18px}
.suite-arrival .suite-external-actions{margin:0}

.suite-grid.suite-grid--wheel-left{
  width:min(100%,1120px);
  margin:26px auto 0;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
  gap:24px;
}
.wheel-panel{
  width:100% !important;
  max-width:640px !important;
  min-height:0 !important;
  padding:24px 26px 28px !important;
  border-color:rgba(216,168,79,.26) !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 50% 43%,rgba(216,168,79,.08),transparent 38%),
    linear-gradient(145deg,rgba(255,253,249,.98),rgba(248,231,227,.22)) !important;
  box-shadow:0 24px 64px rgba(109,78,65,.09),inset 0 0 0 1px rgba(255,255,255,.78) !important;
}
.wheel-panel .suite-moon-magic-pill{
  margin:0 0 18px !important;
  padding:14px 16px !important;
  border-color:rgba(216,168,79,.24) !important;
  background:linear-gradient(135deg,rgba(255,253,249,.94),rgba(248,231,227,.44)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
}

.medicine-wheel{
  position:relative !important;
  display:block;
  width:min(100%,520px) !important;
  max-width:520px !important;
  aspect-ratio:1 !important;
  margin:0 auto !important;
  overflow:visible !important;
  border-radius:30px !important;
  background:transparent !important;
  box-shadow:none !important;
}
.wheel-orbit{
  position:absolute;
  inset:0;
  width:100%;
  aspect-ratio:1;
  border:1px solid rgba(216,168,79,.22);
  border-radius:50%;
  background:
    radial-gradient(circle at center,rgba(255,253,249,.98) 0 32%,rgba(255,253,249,.78) 33% 37%,transparent 38%),
    radial-gradient(circle at center,rgba(255,253,249,.98),rgba(251,247,241,.84));
  box-shadow:inset 0 0 58px rgba(109,78,65,.045),0 18px 48px rgba(109,78,65,.06);
}
.wheel-number-ring{
  border-width:2px !important;
  border-color:rgba(216,168,79,.78) !important;
}
.wheel-room{
  width:var(--day-size) !important;
  height:var(--day-size) !important;
  border:1.5px solid rgba(216,168,79,.72) !important;
  background:rgba(255,253,249,.99) !important;
  color:#5a4639 !important;
  font-size:clamp(.58rem,1.4vw,.78rem) !important;
  box-shadow:0 7px 16px rgba(109,78,65,.07),inset 0 1px 0 rgba(255,255,255,.96) !important;
}
.wheel-room.active{
  background:linear-gradient(145deg,#fffaf1,#f6ded8) !important;
  border-color:rgba(191,127,116,.8) !important;
  box-shadow:0 0 0 4px rgba(243,212,207,.26),0 8px 18px rgba(109,78,65,.09) !important;
}
.wheel-room.active::after{content:none !important}
.wheel-star-marker{
  left:var(--star-x) !important;
  top:var(--star-y) !important;
  color:#c49337 !important;
  font-size:1.04rem !important;
  filter:drop-shadow(0 3px 7px rgba(109,78,65,.22));
}
.rose-compass-center{
  width:44% !important;
  height:44% !important;
  max-width:none !important;
  filter:drop-shadow(0 16px 20px rgba(109,78,65,.09)) !important;
}

.wheel-season-grid{
  position:absolute;
  inset:0;
  z-index:12;
  pointer-events:none;
}
.wheel-season{
  position:absolute !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px !important;
  width:112px !important;
  min-width:112px !important;
  min-height:76px;
  padding:9px 10px !important;
  border:1px solid rgba(216,168,79,.28) !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,rgba(255,253,249,.97),rgba(248,231,227,.30)) !important;
  box-shadow:0 13px 28px rgba(109,78,65,.07),inset 0 0 0 1px rgba(255,255,255,.68) !important;
  color:#6d4e41 !important;
  font-size:.66rem !important;
  line-height:1.08 !important;
  text-align:center;
  text-decoration:none;
  pointer-events:auto !important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.wheel-season:hover{transform:translateY(-2px);border-color:rgba(216,168,79,.54) !important;box-shadow:0 17px 34px rgba(109,78,65,.10) !important}
.wheel-season.current{
  border-color:rgba(191,127,116,.56) !important;
  background:linear-gradient(145deg,#fffaf5,rgba(243,212,207,.54)) !important;
  box-shadow:0 0 0 4px rgba(243,212,207,.18),0 15px 32px rgba(109,78,65,.09) !important;
}
.wheel-season strong{font:400 .77rem/1.05 Georgia,"Times New Roman",serif;letter-spacing:.01em;color:#6d4e41}
.wheel-season small{
  font-family:Arial,sans-serif !important;
  font-size:.47rem !important;
  font-weight:700;
  letter-spacing:.1em !important;
  text-transform:uppercase;
  color:rgba(109,78,65,.72) !important;
}
.wheel-season-autumn{left:1.5% !important;top:1.5% !important;right:auto !important;bottom:auto !important}
.wheel-season-summer{right:1.5% !important;top:1.5% !important;left:auto !important;bottom:auto !important}
.wheel-season-winter{left:1.5% !important;bottom:1.5% !important;right:auto !important;top:auto !important}
.wheel-season-spring{right:1.5% !important;bottom:1.5% !important;left:auto !important;top:auto !important}

.moon-phase-symbol{
  display:block;
  width:16px;
  height:16px;
  margin-bottom:2px;
  border:1.5px solid rgba(169,116,48,.82);
  border-radius:50%;
  background:#fffdf9;
  box-shadow:0 3px 8px rgba(109,78,65,.08);
}
.moon-phase-new{background:linear-gradient(145deg,#b67f34,#d9ae58)}
.moon-phase-full{background:#fffdf9}
.moon-phase-half-full{background:linear-gradient(90deg,#b67f34 0 50%,#fffdf9 50% 100%)}
.moon-phase-half-new{background:linear-gradient(90deg,#fffdf9 0 50%,#b67f34 50% 100%)}

.you-are-here{
  margin:16px 0 0 !important;
  color:rgba(109,78,65,.68);
  font-family:Arial,sans-serif;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.wheel-current-room{
  margin-top:14px !important;
  border-color:rgba(216,168,79,.22) !important;
  background:linear-gradient(145deg,rgba(255,253,249,.94),rgba(248,231,227,.30)) !important;
}
.suite-flow-map-link--below-room{margin-top:14px !important}

.flowtel-loading-overlay{
  background:
    radial-gradient(circle at 50% 36%,rgba(255,255,255,.96),rgba(251,247,241,.88) 46%,rgba(243,212,207,.58)),
    rgba(251,247,241,.92) !important;
  backdrop-filter:blur(10px) !important;
  padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom)) !important;
}
.flowtel-loading-card{
  position:relative;
  width:min(100%,520px) !important;
  padding:28px clamp(20px,5vw,42px) 32px !important;
  overflow:hidden;
  border-color:rgba(216,168,79,.34) !important;
  border-radius:34px !important;
  background:linear-gradient(180deg,rgba(255,253,249,.98),rgba(251,247,241,.96)) !important;
  box-shadow:0 34px 92px rgba(109,78,65,.16),inset 0 0 0 1px rgba(255,255,255,.86) !important;
}
.flowtel-loading-card::before{
  content:"";
  position:absolute;
  inset:11px;
  border:1px solid rgba(216,168,79,.16);
  border-radius:25px;
  pointer-events:none;
}
.flowtel-loading-eyebrow{
  position:relative;
  z-index:1;
  margin:0 0 4px !important;
  color:var(--rose) !important;
  font-family:Arial,sans-serif !important;
  font-size:.64rem !important;
  font-weight:800;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.flowtel-loading-bell-wrap{
  position:relative;
  z-index:1;
  width:min(100%,330px);
  aspect-ratio:4/3;
  margin:0 auto -8px;
  overflow:hidden;
}
.flowtel-loading-bell{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 72%;
  animation:flowtelBellBreathe 2.8s ease-in-out infinite;
}
.flowtel-loading-card h2{
  position:relative;
  z-index:1;
  margin:0 0 10px;
  color:#6d4e41;
  font-size:clamp(1.45rem,5vw,2.2rem);
  letter-spacing:.08em;
}
.flowtel-loading-card #flowtelLoadingCopy{
  position:relative;
  z-index:1;
  margin:0 !important;
  color:#7b5a4e !important;
  font-size:1rem !important;
}
.flowtel-loading-card small{
  position:relative;
  z-index:1;
  display:block;
  margin:8px auto 0;
  color:rgba(109,78,65,.62);
  font-size:.83rem;
  line-height:1.45;
}
.flowtel-loading-progress{
  position:relative;
  z-index:1;
  width:min(100%,250px);
  height:3px;
  margin:22px auto 0;
  overflow:hidden;
  border-radius:999px;
  background:rgba(216,168,79,.14);
}
.flowtel-loading-progress span{
  display:block;
  width:42%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,transparent,#d8a84f,#c97974,transparent);
  animation:flowtelLoadingSweep 1.8s ease-in-out infinite;
}
@keyframes flowtelBellBreathe{0%,100%{transform:scale(1);filter:drop-shadow(0 18px 26px rgba(109,78,65,.08))}50%{transform:scale(1.018);filter:drop-shadow(0 22px 32px rgba(109,78,65,.12))}}
@keyframes flowtelLoadingSweep{0%{transform:translateX(-110%)}100%{transform:translateX(250%)}}

@media(max-width:900px){
  .suite-grid.suite-grid--wheel-left{grid-template-columns:1fr;max-width:680px}
  .wheel-panel{max-width:620px !important}
}

@media(max-width:700px){
  .flowtel-app{padding:14px 9px}
  .flowtel-shell{min-height:0;padding:42px 12px 30px;border-radius:26px}
  .rose-corner{width:94px;height:94px;top:8px;right:8px;opacity:.32}
  .suite-arrival{margin-bottom:18px;padding:20px 16px 18px;border-radius:24px}
  .suite-arrival::before{left:10px}.suite-arrival::after{right:10px}
  .suite-arrival-emblem{width:74px;height:54px}
  .suite-arrival .eyebrow{margin-top:2px}

  .wheel-panel{
    width:100% !important;
    max-width:440px !important;
    padding:18px 12px 22px !important;
    overflow:visible !important;
    border-radius:24px !important;
  }
  .wheel-panel .suite-moon-magic-pill{margin-bottom:16px !important;padding:13px 14px !important}
  .medicine-wheel{
    display:grid !important;
    width:min(100%,390px) !important;
    max-width:390px !important;
    aspect-ratio:auto !important;
    gap:16px;
  }
  .wheel-orbit{
    position:relative !important;
    inset:auto !important;
    width:100%;
    aspect-ratio:1;
    order:1;
  }
  .wheel-season-grid{
    position:static !important;
    inset:auto !important;
    order:2;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:100%;
    pointer-events:auto;
  }
  .wheel-season{
    position:static !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100% !important;
    min-width:0 !important;
    min-height:76px;
    padding:9px 8px !important;
  }
  .wheel-season-winter{order:1}.wheel-season-spring{order:2}.wheel-season-summer{order:3}.wheel-season-autumn{order:4}
  .wheel-season strong{font-size:.73rem}
  .wheel-season small{font-size:.44rem !important}
  .moon-phase-symbol{width:15px;height:15px}
  .wheel-room{font-size:clamp(.52rem,2.7vw,.68rem) !important}
  .wheel-star-marker{font-size:.92rem !important}
  .rose-compass-center{width:43% !important;height:43% !important}
  .you-are-here{margin-top:14px !important}
  .wheel-current-room{margin-top:12px !important}

  .reflection-moon-magic{grid-template-columns:1fr;text-align:center}
  .reflection-moon-label{grid-row:auto;justify-self:center}
  .flowtel-loading-card{border-radius:28px !important;padding:20px 16px 26px !important}
  .flowtel-loading-card::before{inset:8px;border-radius:21px}
  .flowtel-loading-bell-wrap{width:min(100%,280px);margin-bottom:-4px}
  .flowtel-loading-card small{max-width:270px}
  .preparing-scene{min-height:470px;padding:40px 12px}
  .preparing-bell{width:min(100%,330px)}
}

@media(max-width:360px){
  .flowtel-app{padding:8px 5px}
  .flowtel-shell{padding-inline:8px;border-radius:20px}
  .wheel-panel{padding-inline:6px !important}
  .wheel-season-grid{gap:7px}
  .wheel-season{min-height:72px;padding-inline:5px !important}
  .wheel-season strong{font-size:.68rem}
  .wheel-season small{font-size:.4rem !important;letter-spacing:.07em !important}
  .moon-phase-symbol{width:14px;height:14px}
  .flowtel-loading-overlay{padding-inline:9px !important}
}


/* Release 0.10.39 — Suite quiet luxury geometry + refined loading */
.suite-arrival{
  width:min(100%,880px) !important;
  margin:0 auto 18px !important;
  padding:18px clamp(16px,3vw,34px) 18px !important;
}
.suite-arrival .eyebrow{
  margin:4px 0 8px !important;
  font-size:.66rem !important;
  letter-spacing:.28em !important;
}
.suite-arrival h2{
  margin:0 auto !important;
  max-width:760px;
  font-size:clamp(2.05rem,4.4vw,3.35rem) !important;
  line-height:.98 !important;
  letter-spacing:.03em !important;
}
.suite-arrival .suite-subline{
  margin:10px auto 14px !important;
  max-width:640px !important;
  font-size:clamp(1rem,1.45vw,1.24rem) !important;
}
.suite-arrival .queendom-return-link{
  min-width:min(100%,285px) !important;
  padding:.78rem 1.12rem !important;
  font-size:.68rem !important;
}

.wheel-panel{
  max-width:660px !important;
  padding:22px 24px 28px !important;
}
.medicine-wheel{
  width:min(100%,540px) !important;
  max-width:540px !important;
  min-height:540px;
}
.wheel-orbit{
  top:68px !important;
  right:74px !important;
  bottom:68px !important;
  left:74px !important;
  width:auto !important;
  height:auto !important;
}
.wheel-number-ring{
  box-sizing:border-box;
}
.wheel-room{
  width:var(--day-size) !important;
  height:var(--day-size) !important;
  aspect-ratio:1/1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  line-height:1 !important;
  font-size:clamp(.64rem,1.2vw,.8rem) !important;
}
.rose-compass-center{
  width:52% !important;
  height:52% !important;
}
.wheel-season{
  width:124px !important;
  min-width:124px !important;
  min-height:84px !important;
  padding:10px 10px !important;
  gap:4px !important;
}
.wheel-season strong{
  font-size:.72rem !important;
  line-height:1.14 !important;
}
.wheel-season small{
  font-size:.46rem !important;
  letter-spacing:.12em !important;
}
.wheel-season-autumn{left:-12px !important;top:-8px !important;}
.wheel-season-summer{right:-12px !important;top:-8px !important;}
.wheel-season-winter{left:-12px !important;bottom:-8px !important;}
.wheel-season-spring{right:-12px !important;bottom:-8px !important;}
.you-are-here{
  margin:18px 0 0 !important;
}

.powder-share-inline{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 12px;
  margin:10px 0 0;
  padding:12px 14px;
  border:1px solid rgba(216,168,79,.18);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,253,249,.9),rgba(248,231,227,.34));
  color:#7b5a4e;
  font-size:.92rem;
  line-height:1.45;
}
.powder-share-inline button{
  margin-left:auto;
  border:none;
  background:transparent;
  color:var(--rose);
  font:700 .78rem/1 Arial,sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  cursor:pointer;
}
.powder-master-setting{
  margin-top:12px !important;
  padding:16px 18px !important;
  border-radius:22px !important;
  border:1px solid rgba(216,168,79,.18) !important;
  background:linear-gradient(145deg,rgba(255,253,249,.96),rgba(248,231,227,.26)) !important;
  gap:14px !important;
}
.powder-master-setting .eyebrow{margin-top:0 !important;}
.powder-master-toggle{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.64) !important;
}
.powder-master-toggle input{margin-top:3px;}
.powder-share-actions{margin-top:0 !important;}
.powder-share-status{margin:0 !important;}

.flowtel-loading-card{
  padding:28px clamp(18px,4vw,34px) 30px !important;
  background:
    linear-gradient(180deg,rgba(255,253,249,.58),rgba(255,250,244,.9) 68%,rgba(255,253,249,.96)),
    url('../assets/concierge-open-soon-bell.png') center 58%/cover no-repeat !important;
}
.flowtel-loading-card::before{
  inset:10px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.02));
}
.flowtel-loading-bell-wrap{display:none !important;}
.flowtel-loading-card h2,
.flowtel-loading-card #flowtelLoadingCopy,
.flowtel-loading-card small,
.flowtel-loading-eyebrow,
.flowtel-loading-progress{position:relative;z-index:1;}
.flowtel-loading-card h2{margin-top:128px !important;}
.flowtel-loading-card #flowtelLoadingCopy{font-size:1rem !important;}

@media(max-width:700px){
  .suite-arrival{padding:16px 14px 16px !important;}
  .suite-arrival h2{font-size:clamp(1.6rem,8.6vw,2.35rem) !important;max-width:320px;}
  .suite-arrival .suite-subline{margin:9px auto 12px !important;font-size:1rem !important;}
  .wheel-panel{padding:18px 12px 24px !important;}
  .medicine-wheel{width:min(100%,392px) !important;max-width:392px !important;min-height:0;}
  .wheel-orbit{top:auto !important;right:auto !important;bottom:auto !important;left:auto !important;width:100% !important;height:auto !important;}
  .wheel-room{font-size:clamp(.56rem,2.5vw,.7rem) !important;}
  .rose-compass-center{width:50% !important;height:50% !important;}
  .wheel-season{min-height:80px !important;padding:10px 8px !important;}
  .wheel-season strong{font-size:.76rem !important;}
  .powder-share-inline{display:block;font-size:.88rem;}
  .powder-share-inline button{display:block;margin:10px 0 0;}
  .powder-master-setting{padding:14px !important;}
  .flowtel-loading-card h2{margin-top:120px !important;font-size:clamp(1.5rem,8vw,2rem) !important;}
}

@media(max-width:360px){
  .medicine-wheel{width:min(100%,356px) !important;max-width:356px !important;}
  .wheel-season{min-height:76px !important;}
  .wheel-season strong{font-size:.71rem !important;}
  .flowtel-loading-card h2{margin-top:108px !important;}
}

/* Release 0.10.40 — canonical Suite header, Medicine Wheel v2, and sharing control */
.suite-scene .suite-arrival{
  width:min(100%,1120px) !important;
  margin:0 auto 22px !important;
  padding:14px clamp(18px,3vw,38px) 16px !important;
  border-radius:26px !important;
  background:
    radial-gradient(circle at 50% -30%,rgba(216,168,79,.12),transparent 42%),
    linear-gradient(135deg,rgba(252,243,239,.92),rgba(255,253,249,.98) 58%,rgba(248,231,227,.3)) !important;
  box-shadow:0 16px 44px rgba(109,78,65,.065),inset 0 0 0 1px rgba(255,255,255,.82) !important;
}
.suite-scene .suite-arrival::before,
.suite-scene .suite-arrival::after{top:12px !important;bottom:12px !important;}
.suite-scene .suite-arrival-emblem{
  width:58px !important;
  height:40px !important;
  margin:0 auto -1px !important;
}
.suite-scene .suite-arrival .eyebrow{
  margin:2px 0 6px !important;
  font-size:.61rem !important;
  letter-spacing:.3em !important;
}
.suite-scene .suite-arrival h2{
  max-width:880px !important;
  margin:0 auto !important;
  color:#75584d !important;
  font-size:clamp(1.45rem,2.45vw,2.25rem) !important;
  line-height:1.08 !important;
  letter-spacing:.025em !important;
  text-transform:none !important;
}
.suite-scene .suite-arrival .suite-subline{
  margin:7px auto 10px !important;
  max-width:700px !important;
  font-size:clamp(.92rem,1.15vw,1.08rem) !important;
  line-height:1.42 !important;
}
.suite-scene .suite-arrival .queendom-return-link{
  min-width:min(100%,260px) !important;
  padding:.68rem 1rem !important;
  font-size:.62rem !important;
  letter-spacing:.2em !important;
}

.suite-grid.suite-grid--wheel-left{
  width:min(100%,1120px) !important;
  grid-template-columns:minmax(0,680px) minmax(320px,1fr) !important;
  align-items:start !important;
  gap:24px !important;
}
.suite-grid.suite-grid--wheel-left .wheel-column{
  display:block !important;
  min-height:0 !important;
  align-self:start !important;
}
.suite-grid.suite-grid--wheel-left .wheel-panel{
  width:100% !important;
  max-width:680px !important;
  min-height:0 !important;
  height:auto !important;
  display:block !important;
  flex:none !important;
  justify-content:initial !important;
  padding:22px 20px 26px !important;
  overflow:hidden !important;
}
.suite-grid.suite-grid--wheel-left .suite-rail{
  display:grid !important;
  grid-auto-rows:max-content !important;
  align-items:start !important;
  align-self:start !important;
  gap:14px !important;
}
.suite-grid.suite-grid--wheel-left .suite-rail > *{
  min-height:0 !important;
  height:auto !important;
  align-self:start !important;
}

.medicine-wheel-v2{
  --orbit-size:490px;
  --ring-base:406px;
  --ring-offset:47px;
  --day-size:31px;
  --compass-size:248px;
  position:relative;
  width:100%;
  max-width:640px;
  height:610px;
  margin:0 auto;
  isolation:isolate;
}
.mwv2-orbit{
  position:absolute;
  left:50%;
  top:50%;
  width:var(--orbit-size);
  height:var(--orbit-size);
  transform:translate(-50%,-50%);
  border:1px solid rgba(216,168,79,.2);
  border-radius:50%;
  background:radial-gradient(circle at center,rgba(255,253,249,.98),rgba(251,247,241,.8));
  box-shadow:inset 0 0 58px rgba(109,78,65,.045),0 16px 44px rgba(109,78,65,.055);
}
.mwv2-ring{
  position:absolute;
  left:50%;
  top:50%;
  box-sizing:border-box;
  border:2px solid rgba(216,168,79,.78);
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.mwv2-ring-inner{
  width:calc(var(--ring-base) - var(--ring-offset));
  height:calc(var(--ring-base) - var(--ring-offset));
}
.mwv2-ring-outer{
  width:calc(var(--ring-base) + var(--ring-offset));
  height:calc(var(--ring-base) + var(--ring-offset));
}
.mwv2-compass{
  position:absolute;
  left:50%;
  top:50%;
  width:var(--compass-size);
  height:var(--compass-size);
  object-fit:contain;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 14px 20px rgba(109,78,65,.085));
  pointer-events:none;
}
.mwv2-day{
  all:unset;
  box-sizing:border-box !important;
  position:absolute;
  z-index:5;
  left:var(--x);
  top:var(--y);
  width:var(--day-size) !important;
  min-width:var(--day-size) !important;
  max-width:var(--day-size) !important;
  height:var(--day-size) !important;
  min-height:var(--day-size) !important;
  max-height:var(--day-size) !important;
  aspect-ratio:1/1 !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  margin:0 !important;
  border:1.5px solid rgba(216,168,79,.76) !important;
  border-radius:50% !important;
  background:rgba(255,253,249,.995) !important;
  color:#5a4639 !important;
  box-shadow:0 6px 15px rgba(109,78,65,.07),inset 0 1px 0 rgba(255,255,255,.98) !important;
  font:400 clamp(.62rem,1.1vw,.78rem)/1 Georgia,"Times New Roman",serif !important;
  text-align:center !important;
  cursor:pointer;
  transform:translate(-50%,-50%);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.mwv2-day:hover{transform:translate(-50%,-50%) scale(1.04);}
.mwv2-day.active{
  border-color:rgba(191,127,116,.86) !important;
  background:linear-gradient(145deg,#fffaf2,#f6ddd7) !important;
  box-shadow:0 0 0 4px rgba(243,212,207,.25),0 8px 18px rgba(109,78,65,.1) !important;
}
.mwv2-star{
  position:absolute;
  z-index:8;
  left:var(--star-x);
  top:var(--star-y);
  color:#c49337;
  font-size:1.05rem;
  line-height:1;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 3px 7px rgba(109,78,65,.2));
  pointer-events:none;
}
.mwv2-season-grid{
  position:absolute;
  inset:0;
  z-index:10;
  pointer-events:none;
}
.mwv2-season-card{
  position:absolute;
  width:132px;
  min-height:86px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:10px 11px;
  border:1px solid rgba(216,168,79,.3);
  border-radius:19px;
  background:linear-gradient(145deg,rgba(255,253,249,.98),rgba(248,231,227,.3));
  box-shadow:0 13px 28px rgba(109,78,65,.065),inset 0 0 0 1px rgba(255,255,255,.7);
  color:#6d4e41;
  text-align:center;
  text-decoration:none;
  pointer-events:auto;
}
.mwv2-season-card.current{
  border-color:rgba(191,127,116,.58);
  background:linear-gradient(145deg,#fffaf5,rgba(243,212,207,.55));
  box-shadow:0 0 0 4px rgba(243,212,207,.18),0 15px 30px rgba(109,78,65,.085);
}
.mwv2-season-card strong{
  color:#6d4e41;
  font:400 .73rem/1.15 Georgia,"Times New Roman",serif;
}
.mwv2-season-card small{
  color:rgba(109,78,65,.72);
  font:700 .45rem/1.1 Arial,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.mwv2-season-autumn{left:0;top:4px;}
.mwv2-season-summer{right:0;top:4px;}
.mwv2-season-winter{left:0;bottom:4px;}
.mwv2-season-spring{right:0;bottom:4px;}

.journal-card .powder-share-inline{
  display:inline;
  margin:10px 0 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#7b5a4e;
  font-size:.92rem;
  font-style:italic;
  line-height:1.5;
}
.journal-card .powder-share-inline button{
  all:unset;
  display:inline;
  color:inherit;
  font:inherit;
  font-style:normal;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  cursor:pointer;
}
.journal-card .powder-master-setting{
  display:block !important;
  width:min(100%,760px) !important;
  margin:12px auto 0 !important;
  padding:15px 17px !important;
  border:1px solid rgba(216,168,79,.2) !important;
  border-radius:20px !important;
  background:linear-gradient(145deg,rgba(255,253,249,.96),rgba(248,231,227,.24)) !important;
  text-align:left !important;
}
.journal-card .powder-master-setting > div:first-child p:not(.eyebrow){
  margin:3px 0 12px !important;
  font-size:.94rem !important;
  line-height:1.45 !important;
}
.journal-card .powder-master-toggle{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  width:100% !important;
  margin:0 !important;
  padding:11px 12px !important;
  gap:10px !important;
  border:1px solid rgba(216,168,79,.13) !important;
  border-radius:15px !important;
  background:rgba(255,255,255,.62) !important;
  text-align:left !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.journal-card .powder-master-toggle input{
  flex:0 0 18px !important;
  width:18px !important;
  height:18px !important;
  margin:1px 0 0 !important;
  padding:0 !important;
}
.journal-card .powder-master-toggle span{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:none !important;
  color:#76584d !important;
  font:400 .92rem/1.4 Georgia,"Times New Roman",serif !important;
  text-align:left !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.journal-card .powder-share-actions{
  display:flex !important;
  justify-content:flex-end !important;
  margin-top:10px !important;
}
.journal-card .powder-share-actions button{
  width:auto !important;
  min-width:110px !important;
  margin:0 !important;
  padding:10px 18px !important;
}

@media(max-width:900px){
  .suite-grid.suite-grid--wheel-left{grid-template-columns:1fr !important;max-width:680px !important;}
  .suite-grid.suite-grid--wheel-left .suite-rail{width:100% !important;}
}

@media(max-width:700px){
  .suite-scene .suite-arrival{
    width:100% !important;
    margin-bottom:17px !important;
    padding:12px 13px 14px !important;
    border-radius:22px !important;
  }
  .suite-scene .suite-arrival-emblem{width:48px !important;height:34px !important;}
  .suite-scene .suite-arrival h2{
    max-width:330px !important;
    font-size:clamp(1.25rem,6.1vw,1.72rem) !important;
    line-height:1.1 !important;
  }
  .suite-scene .suite-arrival .suite-subline{font-size:.92rem !important;margin:6px auto 9px !important;}
  .suite-scene .suite-arrival .queendom-return-link{width:auto !important;min-width:230px !important;}
  .suite-grid.suite-grid--wheel-left .wheel-panel{padding:17px 10px 22px !important;overflow:hidden !important;}
  .medicine-wheel-v2{
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
    width:100%;
    max-width:430px;
    height:auto;
    margin:0 auto;
  }
  .mwv2-orbit{
    position:relative;
    left:auto;
    top:auto;
    order:1;
    width:var(--orbit-size);
    height:var(--orbit-size);
    max-width:100%;
    margin:0 auto;
    transform:none;
  }
  .mwv2-season-grid{
    position:static;
    order:2;
    width:min(100%,350px);
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 14px;
    pointer-events:auto;
  }
  .mwv2-season-card{
    position:static;
    width:100%;
    min-width:0;
    min-height:92px;
    padding:10px 8px;
  }
  .mwv2-season-winter{order:1;}
  .mwv2-season-spring{order:2;}
  .mwv2-season-summer{order:3;}
  .mwv2-season-autumn{order:4;}
  .mwv2-season-card strong{font-size:.77rem;}
  .mwv2-day{font-size:clamp(.58rem,2.6vw,.7rem) !important;}
  .journal-card .powder-share-inline{font-size:.88rem;}
  .journal-card .powder-master-setting{padding:13px !important;}
  .journal-card .powder-master-toggle{gap:9px !important;padding:10px !important;}
  .journal-card .powder-share-actions button{width:100% !important;}
}

@media(max-width:360px){
  .mwv2-season-grid{width:min(100%,330px);gap:9px;}
  .mwv2-season-card{min-height:88px;padding-inline:6px;}
  .mwv2-season-card strong{font-size:.71rem;}
}

/* Flowtel v0.10.42 — dual map doorway + final Powder Room disclosure repair */
.suite-map-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  width:min(100%,640px);
  margin:14px auto 0;
}
.suite-map-actions .suite-flow-map-link--below-room{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  min-width:0;
}
.journal-card #powderRoomSharingPanel.hidden,
.journal-card #powderRoomSharingPanel[hidden]{
  display:none !important;
}
.journal-card #powderRoomSharingPanel:not(.hidden):not([hidden]){
  display:block !important;
}
.journal-card .powder-share-inline{
  display:block !important;
  color:#7b5a4e !important;
  font:italic 400 .92rem/1.5 Georgia,"Times New Roman",serif !important;
}
.journal-card #powderRoomSharingCopy,
.journal-card #powderRoomSharingExpandButton{
  display:inline !important;
  color:inherit !important;
  font:inherit !important;
  font-style:inherit !important;
  line-height:inherit !important;
}
.journal-card #powderRoomSharingExpandButton{
  all:unset;
  margin-left:.18em;
  text-decoration:none !important;
  cursor:pointer;
}
.journal-card #powderRoomSharingExpandButton:hover,
.journal-card #powderRoomSharingExpandButton:focus-visible{
  color:#a86961 !important;
}
.journal-card #powderRoomSharingExpandButton:focus-visible{
  outline:1px solid rgba(201,121,116,.55);
  outline-offset:3px;
  border-radius:3px;
}
@media(max-width:420px){
  .suite-map-actions{gap:7px;}
  .suite-map-actions .suite-flow-map-link--below-room{
    padding-inline:8px !important;
    font-size:.58rem !important;
    letter-spacing:.1em !important;
  }
}


/* Flowtel v0.10.43 — Mentor Panel profile portrait */
.mentor-panel-intro{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:18px;
  align-items:center;
  margin:42px 0 18px;
}
.mentor-panel-intro .eyebrow{margin-top:0;margin-bottom:8px;}
.mentor-panel-intro h3{margin:.15rem 0 .5rem;}
.mentor-panel-intro p:last-child{margin:0;color:var(--soft-brown);line-height:1.45;}
.mentor-panel-photo{
  width:92px;
  height:92px;
  padding:5px;
  border:1px solid rgba(216,168,79,.42);
  border-radius:50%;
  background:rgba(255,253,249,.96);
  box-shadow:0 16px 32px rgba(109,78,65,.1);
  overflow:hidden;
}
.mentor-panel-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
@media(max-width:640px){
  .mentor-panel-intro{grid-template-columns:72px minmax(0,1fr);gap:14px;margin-top:38px;}
  .mentor-panel-photo{width:70px;height:70px;padding:4px;}
}

/* Flowtel v0.10.49 — Personal Room Keys + Secure Remembered Entry */
.switch-account-button{
  position:absolute;
  top:28px;
  left:28px;
  z-index:18;
  width:auto;
  margin:0;
  padding:9px 14px;
  border-color:rgba(109,78,65,.12);
  background:rgba(255,253,249,.82);
  color:var(--soft-brown);
  font-size:.62rem;
  letter-spacing:.1em;
  box-shadow:0 8px 24px rgba(109,78,65,.06);
}

.text-button{
  width:auto;
  margin:12px auto 0;
  padding:4px 2px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:var(--rose);
  font-family:Georgia,"Times New Roman",serif;
  font-size:.88rem;
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
  text-decoration:underline;
  text-underline-offset:3px;
}

.personal-room-key-overlay{
  position:fixed;
  inset:0;
  z-index:1200;
  display:grid;
  place-items:center;
  padding:22px;
  overflow:auto;
  background:rgba(86,62,52,.44);
  backdrop-filter:blur(12px);
}

.personal-room-key-card{
  width:min(100%,560px);
  padding:clamp(28px,6vw,48px);
  border:1px solid rgba(216,168,79,.34);
  border-radius:32px;
  background:linear-gradient(145deg,rgba(255,253,249,.99),rgba(248,231,227,.96));
  box-shadow:0 32px 110px rgba(74,48,39,.24),inset 0 0 0 1px rgba(255,255,255,.76);
  text-align:center;
}

.personal-room-key-card .eyebrow{
  margin:0 0 10px;
}

.personal-room-key-rose{
  width:88px;
  height:88px;
  margin:0 auto 10px;
  object-fit:contain;
}

.personal-room-key-card h2{
  font-size:clamp(1.65rem,5vw,2.45rem);
  letter-spacing:.06em;
}

.personal-room-key-card > p:not(.eyebrow):not(.personal-room-key-message):not(.personal-room-key-requirements){
  max-width:430px;
  margin:16px auto 22px;
  color:var(--soft-brown);
  line-height:1.55;
}

.personal-room-key-card label{
  max-width:430px;
  margin-left:auto;
  margin-right:auto;
}

.personal-room-key-card input{
  display:block;
  max-width:430px;
  margin:0 auto;
  background:rgba(255,255,255,.94);
}

.personal-room-key-requirements{
  max-width:430px;
  margin:12px auto 0;
  color:var(--soft-brown);
  font-size:.82rem;
  line-height:1.45;
}

.personal-room-key-message{
  min-height:1.3em;
  margin:12px auto 0;
  color:var(--rose);
  font-family:Arial,sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.04em;
}

.personal-room-key-card button{
  max-width:430px;
}

body.personal-room-key-is-open{
  overflow:hidden;
}

@media(max-width:700px){
  .switch-account-button{
    top:16px;
    left:16px;
    padding:8px 11px;
    font-size:.56rem;
  }

  .personal-room-key-overlay{
    align-items:start;
    padding:14px;
  }

  .personal-room-key-card{
    margin-top:20px;
    padding:28px 20px;
    border-radius:26px;
  }
}

/* Flowtel v0.10.53 — Unread Concierge Notes + Profile Button Polish */
.concierge-note-groups{
  display:grid;
  gap:12px;
  margin-top:4px;
}
.concierge-note-group{
  padding:14px;
  border:1px solid rgba(109,78,65,.10);
  border-radius:18px;
  background:rgba(255,253,249,.58);
}
.concierge-note-group--carried{
  background:linear-gradient(135deg,rgba(255,253,249,.9),rgba(248,231,227,.42));
  border-color:rgba(216,168,79,.22);
}
.concierge-note-context{
  display:block;
  margin-bottom:8px;
  font-family:Arial,sans-serif;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--rose);
}
.concierge-note-group .concierge-notes-scroll{
  max-height:260px;
  margin:10px 0 0;
}
.concierge-note-group .concierge-group-read-button,
.concierge-note-group .concierge-group-received-button{
  width:100% !important;
  justify-self:stretch !important;
}
.concierge-current-day-state{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid rgba(109,78,65,.10);
  border-radius:18px;
  background:rgba(255,253,249,.7);
}
.concierge-current-day-state--requested{
  border-color:rgba(216,168,79,.22);
}
.concierge-current-day-state .concierge-note-context{
  margin-bottom:0;
}


/* Flowtel v0.10.72 — private Four Seasons workshop + simplified seasonal locations */
.video-lounge-card.flow-fm-lounge-content{display:grid;gap:17px;text-align:left}
.video-lounge-card.flow-fm-lounge-content>h3{margin:0;font-size:clamp(1.9rem,3.4vw,2.8rem)}
.lounge-video-intro{max-width:760px;margin:0;color:var(--muted,#806963);line-height:1.7}
.lounge-video-frame{overflow:hidden;border:1px solid rgba(184,148,85,.38);border-radius:24px;background:#1b1115;box-shadow:0 18px 45px rgba(73,40,47,.18)}
.lounge-video-frame video{display:block;width:100%;max-height:72vh;background:#130d10}
.lounge-video-status{min-height:20px;margin:0;color:#a35f65;font-family:"Cormorant Garamond",serif;font-size:1.05rem;font-style:italic}
@media(max-width:700px){.lounge-video-frame{border-radius:17px}}

.lounge-season-planner{display:grid;gap:20px;padding:24px;border:1px solid rgba(184,148,85,.28);border-radius:24px;background:rgba(255,253,248,.74)}
.lounge-season-planner>header{text-align:left}.lounge-season-planner>header h3{margin:0}
.lounge-season-planner-form{display:grid;gap:16px}
.lounge-season-planner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.lounge-season-card{display:grid;gap:9px;padding:18px;border:1px solid rgba(184,148,85,.22);border-radius:20px;background:#fffdf8;text-align:left;color:#9a5e58;font:700 .62rem Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.lounge-season-card input{width:100%;margin:0;border:1px solid rgba(184,148,85,.28);border-radius:14px;padding:13px 14px;background:#fff;color:var(--ink,#5d4037);font:400 1rem Georgia,serif;letter-spacing:0;text-transform:none}
.lounge-season-card small{color:var(--muted,#806963);font:400 .72rem Georgia,serif;letter-spacing:0;text-transform:none}
.lounge-season-save{justify-self:center;min-width:min(100%,320px);min-height:45px}
.lounge-season-planner-status{min-height:18px;margin:0;color:#a35f65;font-style:italic;text-align:center}
@media(max-width:760px){.lounge-season-planner{padding:17px}.lounge-season-planner-grid{grid-template-columns:1fr}.lounge-season-save{width:100%}}

/* Release 0.10.67 — balanced Concierge care buttons */
#requestTurndownButton,#requestWakeUpTextButton{width:min(100%,300px);justify-content:center}
@media(max-width:620px){#requestTurndownButton,#requestWakeUpTextButton{width:100%}}

/* Flowtel v0.10.69 — My Profile doorway */
.suite-arrival .suite-external-actions{gap:10px;flex-wrap:wrap}
.suite-arrival .suite-external-actions .queendom-return-link{min-width:220px;max-width:310px}
@media(max-width:640px){.suite-arrival .suite-external-actions .queendom-return-link{max-width:none}}

/* Flowtel v0.10.81.1 — inline Womb Magic scheduling */
.womb-magic-suite-card{overflow:hidden}
.womb-magic-suite-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}
.womb-magic-suite-intro>div{min-width:0}
.womb-magic-suite-intro .mentor-schedule-button{flex:0 0 auto;width:auto!important;min-width:210px}
.womb-magic-suite-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:18px 20px;border:1px solid rgba(216,168,79,.34);border-radius:20px;background:linear-gradient(135deg,rgba(248,231,227,.56),rgba(255,253,249,.92))}
.wm-suite-summary-copy{display:grid;gap:3px}
.wm-suite-summary-copy .eyebrow{margin:0}
.wm-suite-summary-copy strong{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.45rem);font-weight:600;color:var(--brown)}
.wm-suite-summary-copy span{color:var(--soft-brown)}
.wm-suite-summary-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.wm-suite-summary-actions .secondary{width:auto!important;min-width:0!important;margin:0;padding:10px 15px}
.womb-magic-inline-panel{margin-top:22px;padding-top:22px;border-top:1px solid rgba(216,168,79,.28)}
.womb-magic-inline-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.womb-magic-inline-heading h3{margin:.2rem 0 .45rem}
.womb-magic-close{width:auto!important;min-width:96px!important;margin:0!important}
.womb-magic-inline-message{min-height:1.45em;margin:12px 0 0;color:var(--soft-brown);font-style:italic}
.womb-magic-choice-row{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 16px}
.womb-magic-choice-row .secondary{width:auto!important;min-width:0!important;margin:0;padding:10px 16px}
.womb-magic-choice-row .active,.wm-mentor-card.active,.wm-date-button.active,.wm-time-button.active{border-color:rgba(184,130,38,.9)!important;box-shadow:0 0 0 3px rgba(216,168,79,.12)}
.womb-magic-mentor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:12px 0 20px}
.wm-mentor-card{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:11px 13px;border:1px solid rgba(111,77,67,.18);border-radius:18px;background:rgba(255,253,249,.92);color:var(--brown);text-align:left;cursor:pointer;box-shadow:none}
.wm-mentor-card:hover{transform:translateY(-1px);border-color:rgba(216,168,79,.54);box-shadow:0 10px 24px rgba(109,78,65,.08)}
.wm-mentor-card img{width:52px;height:52px;flex:0 0 52px;border-radius:50%;object-fit:cover;border:1px solid rgba(216,168,79,.4);box-shadow:0 5px 14px rgba(109,78,65,.12)}
.wm-mentor-copy{display:grid;gap:3px;min-width:0}
.wm-mentor-copy strong{font-family:var(--serif);font-size:1.08rem;line-height:1.15;color:var(--brown)}
.wm-mentor-copy small{font-size:.72rem;line-height:1.35;color:var(--soft-brown);overflow-wrap:anywhere}
.womb-magic-calendar-step{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0 14px}
.womb-magic-calendar-step label,.womb-magic-phone-field{display:grid;gap:7px;color:var(--brown)}
.womb-magic-calendar-step input,.womb-magic-phone-field input{min-height:46px;padding:0 13px;border:1px solid rgba(111,77,67,.22);border-radius:14px;background:rgba(255,253,249,.96);color:var(--brown)}
.womb-magic-calendar-step .secondary{width:auto!important;min-width:180px!important;margin:0!important}
.womb-magic-date-grid,.womb-magic-time-grid{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}
.wm-date-button,.wm-time-button{min-width:112px;padding:11px 14px;border:1px solid rgba(111,77,67,.2);border-radius:15px;background:#fffaf5;color:var(--brown);cursor:pointer}
.womb-magic-consent-card{margin-top:22px;padding:20px;border:1px solid rgba(216,168,79,.26);border-radius:20px;background:rgba(248,231,227,.64)}
.womb-magic-consent-card h4{margin:.1rem 0 .55rem;font-family:var(--serif);font-size:1.3rem}
.womb-magic-consent-check{display:flex;align-items:flex-start;gap:10px;margin:17px 0}
.womb-magic-consent-check input{margin-top:4px}
.womb-magic-consent-card>button{width:auto;min-height:46px;padding:0 20px;border:0;border-radius:14px;background:var(--brown);color:#fff}
.womb-magic-consent-card>button:disabled{opacity:.46}
.womb-magic-current-call,.womb-magic-inline-gate{margin-top:18px;padding:18px 20px;border:1px solid rgba(216,168,79,.3);border-radius:20px;background:rgba(255,253,249,.88)}
.womb-magic-current-call header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.womb-magic-current-call h4{margin:.2rem 0;font-family:var(--serif);font-size:1.35rem}
.wm-call-status{padding:6px 10px;border:1px solid rgba(184,130,38,.72);border-radius:999px;font-size:.68rem;letter-spacing:.12em}
.wm-current-call-time{display:grid;gap:2px;margin-top:16px;padding:15px 17px;border-radius:16px;background:rgba(248,231,227,.52)}
.wm-current-call-time strong{font-family:var(--serif);font-size:1.18rem}
.wm-current-call-time span{font-size:1rem}
.wm-call-meta,.wm-call-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.wm-call-meta span{padding:7px 11px;border-radius:999px;background:rgba(255,253,249,.92);font-size:.78rem}
.wm-call-actions .secondary{width:auto!important;min-width:0!important;margin:0!important;padding:10px 15px}
@media(max-width:760px){
  .womb-magic-suite-intro,.womb-magic-suite-summary,.womb-magic-inline-heading{align-items:stretch;flex-direction:column}
  .womb-magic-suite-intro .mentor-schedule-button,.womb-magic-close{width:100%!important}
  .wm-suite-summary-actions{justify-content:flex-start}
  .womb-magic-mentor-grid{grid-template-columns:1fr}
  .womb-magic-calendar-step label,.womb-magic-calendar-step .secondary{width:100%!important}
}
