.relationship{color:#8f98a9;font-size:.78rem;font-weight:650;text-transform:lowercase}
.bleButton{width:100%;border:0;font:inherit;cursor:pointer}
.bleButton:disabled{opacity:.5}
.bleStatus{color:#939cad;font-size:.78rem;line-height:1.35;margin:10px 2px 0;text-align:center}
.stepper button:disabled{opacity:.28}
.messageRow{display:flex;align-items:flex-end;gap:7px;max-width:90%}
.messageRow.mine{align-self:flex-end;flex-direction:row-reverse}
.messageRow .bubble{max-width:100%}
.chatAvatar{width:28px;height:28px;flex:0 0 28px;border-radius:50%;object-fit:cover;background:#3a4150;color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:850;border:1px solid #596274}
.messageRow.mine .bubble{border-radius:16px 16px 4px 16px;background:#286cdf}
.bubble img.chatPhoto{display:block;width:min(210px,55vw);max-height:210px;object-fit:contain;border-radius:10px;margin-top:5px;background:#111}
.bubble audio{display:block;width:min(230px,60vw);height:36px;margin-top:5px}
.caps{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}.caps label{font-size:.78rem;color:#aeb6c4}.caps output{float:right;color:#fff;font-weight:800}.caps input{width:100%;margin-top:7px}
.ramp summary{font-weight:850;cursor:pointer}.ramp label{display:block;margin-top:13px;color:#9ca5b5;font-size:.82rem}.ramp label output{float:right;color:#fff;font-weight:800}.ramp input{width:100%;margin-top:6px}.rampChoices{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.rampChoices button{border:1px solid #4a5261;border-radius:13px;background:#303642;color:#fff;padding:13px;font-weight:800}
.customRamp{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:9px}.customRamp input{box-sizing:border-box;width:100%;min-width:0;margin:0;border:1px solid #4a5261;border-radius:13px;background:#14171d;color:#fff;padding:12px 13px;font:inherit;font-weight:750}.customRamp input:focus{outline:2px solid #3b82f6;outline-offset:1px}.customRamp button{border:1px solid #4a5261;border-radius:13px;background:#303642;color:#fff;padding:12px 14px;font-weight:800;white-space:nowrap}
.ramp summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 12px;list-style-position:inside}.rampProgressText{font-size:.72rem;color:#8f98aa;font-variant-numeric:tabular-nums}.rampProgressTrack{grid-column:1/-1;height:3px;border-radius:99px;overflow:hidden;background:#313744}.rampProgressTrack>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--a),var(--b));transition:width .3s linear}.ramp.active{border-color:#58657b}.ramp.active .rampProgressText{color:#dce5f5}
.batteryWarning{margin:-3px 0 9px;padding:9px 12px;border:1px solid #826b22;border-radius:13px;background:#3a3014;color:#ffe07a;font-size:.78rem;font-weight:800;text-align:center;animation:batteryAppear .25s ease-out}.batteryWarning.veryLow{border-color:#a74c27;background:#421f13;color:#ffae78}.batteryWarning.critical{border-color:#c63246;background:#4b1420;color:#ff99a6;animation:batteryPulse 1.15s ease-in-out infinite}@keyframes batteryAppear{from{opacity:0;transform:translateY(-5px)}}@keyframes batteryPulse{50%{box-shadow:0 0 18px #df2f4866}}
.painRequest{border:0;border-radius:10px;background:#5035a4;color:#fff;padding:8px 11px;font-weight:800}.painRequest:disabled{opacity:.45}
.chat form{grid-template-columns:42px minmax(0,1fr) 42px 42px;gap:7px}.chat form .mediaAction,.chat form .sendAction{width:42px;height:42px;padding:0;display:grid;place-items:center;border:1px solid #4b5362;border-radius:12px;background:#242934;color:#dce2ec;box-shadow:inset 0 1px #ffffff0b,0 3px 9px #0005;touch-action:manipulation}.chat form .sendAction{border-color:#4f90ff;background:#263a62;color:#75adff}.chat form button:active{transform:translateY(1px);background:#30394a}.chat form svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.chat form .sendAction svg{width:22px;height:22px}.recordLabel{display:none;font-size:.62rem;font-weight:900}.mediaAction.recording{border-color:#e34b62!important;background:#6e1d2c!important;color:#fff!important;animation:recordPulse 1s infinite}.mediaAction.recording .micIcon{display:none}.mediaAction.recording .recordLabel{display:block}@keyframes recordPulse{50%{box-shadow:0 0 0 7px #d8294933}}
.messagePopup{position:fixed;z-index:20;left:50%;top:50%;width:min(88vw,390px);transform:translate(-50%,-45%) scale(.94);opacity:0;pointer-events:none;background:#252a35;border:1px solid #566071;border-radius:22px;padding:18px;box-shadow:0 28px 90px #000c;transition:.22s}.messagePopup.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.messagePopup .messageRow{max-width:100%}.messagePopup .bubble{font-size:1.05rem}
.checkinModal{position:fixed;z-index:30;inset:0;background:#05070bd9;display:grid;place-items:center;padding:18px}.checkinCard{width:min(100%,420px);background:#1c2029;border:1px solid #4a5262;border-radius:24px;padding:22px;text-align:center;box-shadow:0 28px 90px #000}.checkinCard strong{display:block;font-size:1.25rem}.checkinCard>span{display:block;color:#9ea7b6;margin-top:5px}.painButtons{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:18px}.painButtons button{border:0;border-radius:12px;color:#071008;padding:13px 0;font-weight:900;font-size:1rem}.painButtons .green{background:#57d77f}.painButtons .yellow{background:#f3c94e}.painButtons .red{background:#f05b66;color:#fff}
.channelWave{display:none;width:100%;height:88px}
body.wearer .channel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 72px;column-gap:12px;align-items:center}
body.wearer .channel>label{grid-column:1;grid-row:1}
body.wearer .channel>.stepper{grid-column:1;grid-row:2;display:flex;justify-content:center;gap:4px;margin:0}
body.wearer .channel>.stepper button{display:none}
body.wearer .channel>.stepper output{font-size:3rem;line-height:1}
body.wearer .channel>.channelWave{display:block;grid-column:2;grid-row:1 / 3;height:88px}
.control .channel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 72px;column-gap:12px;align-items:center}
.control .channel>label{grid-column:1;grid-row:1}
.control .channel>.stepper{grid-column:1;grid-row:2;grid-template-columns:42px 1fr auto 42px;margin:0}
.control .channel>.stepper button{height:48px;font-size:1.55rem;border-radius:13px}
.control .channel>.channelWave{display:block;grid-column:2;grid-row:1 / 3;height:88px}
body.wearer .control .channel>.stepper{display:flex;justify-content:center;gap:4px}
.bubble.pain-green{background:#2f8f50;color:#fff}.bubble.pain-yellow{background:#d2a91f;color:#171205}.bubble.pain-red{background:#c93645;color:#fff}
.messagePopup:has(.painPopupValue){width:auto;padding:0;border:0;background:transparent;box-shadow:none}
.painPopupValue{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;font-size:5rem;font-weight:950;box-shadow:0 22px 80px #000c,0 0 0 10px #ffffff18}
.painPopupValue.pain-green{background:#57d77f;color:#071008}.painPopupValue.pain-yellow{background:#f3c94e;color:#211900}.painPopupValue.pain-red{background:#f05b66;color:#fff}
.feedback h2{margin-bottom:10px}.feedback>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.feedback button{border:0;border-radius:12px;padding:12px 8px;color:#fff;font-weight:800;background:#343a46}.feedback button[data-feedback="good"]{background:#21864a}.feedback button[data-feedback="limit"]{background:#d6a600;color:#181407}.feedback button[data-feedback="pain"]{background:#d7641c}.feedback button[data-feedback="severe"]{background:#b51f37}
.bubble.feedback-good{background:#21864a}.bubble.feedback-limit{background:#d6a600;color:#181407}.bubble.feedback-pain{background:#d7641c}.bubble.feedback-severe{background:#b51f37}
body.wearer main{padding-top:max(8px,env(safe-area-inset-top));padding-left:10px;padding-right:10px}
body.wearer header{margin-bottom:6px}
body.wearer .people{padding:8px;margin-bottom:5px}
body.wearer .panel{padding:10px;margin-top:6px}
body.wearer .control .channel{grid-template-rows:auto 45px;margin-top:5px;padding-top:5px}
body.wearer .control .channel>.channelWave{height:56px}
body.wearer .control .channel>.stepper output{font-size:2.35rem}
body.wearer .chat{height:min(30svh,250px);min-height:205px}
body.wearer .messages{padding:6px 0;gap:5px}
body.wearer .feedback h2{margin-bottom:7px}
body.wearer .feedback button{padding:9px 6px;font-size:.78rem}
body.wearer #wearerSetup{margin-top:18px}
.caps label{display:block;margin-top:12px}.caps label output{float:right;font-weight:850;color:#fff}.capControl{clear:both;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:9px;margin-top:7px}.capControl input{width:100%;margin:0}.capControl button{height:40px;border:1px solid #4a5261;border-radius:11px;background:#303642;color:#fff;font-size:1.35rem;font-weight:750;touch-action:manipulation}.capControl button:active{transform:scale(.96);background:#3a4353}
.wakeButton{width:100%;margin:14px 0 8px;padding:10px 12px;border:1px solid #48505e;border-radius:12px;background:#252a34;color:#cbd2dd;font-weight:800}.wakeButton.active{border-color:#d4a840;background:#41371f;color:#ffe082;box-shadow:inset 0 0 18px #d8a62f18}.pausedScreen{position:fixed;z-index:45;inset:0;display:grid;place-items:center;padding:22px;background:#080a0ef2;backdrop-filter:blur(12px)}.pausedCard{width:min(92vw,430px);padding:32px 24px;text-align:center;border:1px solid #525967;border-radius:26px;background:radial-gradient(circle at 50% 15%,#343a49,#191c23 58%);box-shadow:0 28px 100px #000}.pausedCard b{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 18px;border:2px solid #f0ba47;border-radius:50%;color:#ffd36e;font-size:2rem;box-shadow:0 0 30px #f0ba4733}.pausedCard strong{display:block;font-size:clamp(1.8rem,8vw,2.7rem)}.pausedCard p{margin:13px 0 22px;color:#b6bdc9;line-height:1.45}.pausedCard button{width:100%;padding:15px;border:1px solid #5593ff;border-radius:14px;background:#286cdf;color:#fff;font:inherit;font-weight:900}
.logoutButton{padding:8px 11px;border:1px solid #74313c;border-radius:11px;background:#4a1d26;color:#ffbec7;font:inherit;font-size:.75rem;font-weight:850}.logoutButton:active{transform:translateY(1px);background:#612330}.logoutButton:disabled{opacity:.55}
.feedbackToggle{height:32px;padding:0 9px;border:1px solid #437953;border-radius:10px;background:#203c29;color:#86e5a3;font:inherit;font-size:.66rem;font-weight:850;white-space:nowrap}.feedbackToggle.off{border-color:#676d77;background:#2b2e35;color:#aab0ba}
.livePanel{z-index:18}
header{flex-wrap:wrap}.topProfiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.headerActions{display:flex;align-items:center;justify-content:flex-end;gap:6px;width:100%;margin-top:5px}.shareRoom{border:0;border-radius:99px;background:#286cdf;color:#fff;padding:8px 10px;font-size:.72rem;font-weight:800}
.people{display:none}
.identity{gap:9px;min-width:0}.identity .avatar{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border:2px solid #7d8490;box-shadow:0 0 0 3px #ffffff0b,0 7px 20px #0007}.identity strong{display:block;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.identity small{font-size:.65rem;margin-bottom:2px}.otherIdentity{opacity:.9}
.otherIdentity{cursor:pointer;border:0;background:transparent;color:inherit;padding:0;text-align:left;font:inherit;touch-action:manipulation;-webkit-user-select:none;user-select:none}.otherIdentity img{-webkit-user-drag:none;pointer-events:none}.avatarPreview{position:fixed;z-index:50;inset:0;display:grid;place-items:center;background:#05070bed;opacity:0;visibility:hidden;transition:opacity .18s;padding:18px}.avatarPreview.visible{opacity:1;visibility:visible}.avatarPreview img{width:min(88vw,520px);height:min(88vw,520px);max-height:80svh;object-fit:contain;border-radius:24px;border:2px solid #858b96;box-shadow:0 30px 100px #000}
.avatarPreview.cinematic{grid-template-rows:1fr auto auto auto auto 1fr;justify-items:center;text-align:center;background:#05070bf2;box-shadow:inset 0 0 180px #6d238844}.avatarPreview.cinematic:before{content:'NEW AVATAR';align-self:end;margin-bottom:18px;color:#d39cff;font-size:.72rem;font-weight:900;letter-spacing:.2em}.avatarPreview.cinematic img{width:min(66vw,310px);height:min(66vw,310px);max-height:42svh;align-self:center;border-radius:50%;border:4px solid #c36aff;box-shadow:0 0 0 10px #bc4cff18,0 20px 70px #000,0 0 70px #bc4cff55;animation:arrivalReveal .5s cubic-bezier(.2,.85,.25,1.15)}.avatarPreview.cinematic strong.avatarRevealText{margin-top:20px;max-width:90vw;color:#fff;font-size:clamp(2rem,9vw,3.35rem);line-height:1;overflow-wrap:anywhere}.avatarPreview.cinematic span.avatarRevealText{margin-top:10px;color:#d9d3df;font-size:1.08rem}
.connection.deviceOnline{background:rgba(82,222,131,.14);color:#52de83;font-weight:inherit}
@media(min-width:850px){body.controller main{width:min(100%,1120px)}body.controller #app{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);grid-template-areas:"header header" "control chat" "signal chat" "ramp chat" "error chat";column-gap:14px;align-items:start}body.controller #app>header{grid-area:header}body.controller .control{grid-area:control}body.controller .signalPanel{grid-area:signal}body.controller .ramp{grid-area:ramp}body.controller .chat{grid-area:chat;height:100%;min-height:calc(100vh - 125px);margin-top:10px}body.controller #error{grid-area:error}body.controller .topProfiles{grid-template-columns:220px 220px;width:auto;flex:1}body.controller .headerActions{width:auto;margin:0}}
.signalBadge{font-size:.68rem;color:#cad1dc;background:#303641;border-radius:99px;padding:5px 8px}.signalTitle{margin-bottom:7px}.signalModes{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}.signalModes button{min-width:0;min-height:42px;border:1px solid #495160;border-radius:12px;background:#242934;color:#b8c0cd;padding:5px 12px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:11px;touch-action:manipulation}.signalModes svg{display:block;width:min(38%,82px);height:18px;overflow:visible;flex:0 1 82px}.signalModes path{fill:none;stroke:#8993a6;stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 3px #8993a666)}.signalModes button.active{background:#263a62;color:#fff;border-color:#4f90ff;box-shadow:inset 0 0 18px #347ff722}.signalModes button.active path{stroke:#69a5ff;filter:drop-shadow(0 0 4px #347ff7)}.signalPanel label{display:block;margin-top:10px;color:#a9b1c0;font-size:.8rem}.signalPanel label output{float:right;color:#fff;font-weight:800}.signalPanel input{width:100%;margin-top:5px}.signalPanel.pulse #speedLabel{display:block}.signalPanel:not(.pulse) #speedLabel{display:none}
.signalPanel input[type=range]{display:none}.signalPresets{clear:both;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding-top:8px}.signalPresets button,.signalAdjuster button{border:1px solid #495160;background:#242934;color:#b8c0cd;font:inherit;font-weight:800;touch-action:none}.signalPresets button{min-height:32px;border-radius:10px}.signalPresets button.active{color:#fff;border-color:#4f90ff;background:#263a62;box-shadow:inset 0 0 15px #347ff722}.signalAdjuster{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:9px;margin-top:7px}.signalAdjuster button{height:38px;border-radius:11px;color:#fff;font-size:1.35rem;line-height:1}.signalAdjuster button:active{transform:scale(.96);background:#34415a}.signalTrack{height:6px;overflow:hidden;border-radius:99px;background:#343943}.signalTrack i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6e9fff,#bc4cff);box-shadow:0 0 9px #7f72ff88;transition:width .1s linear}.signalPanel.pulse #speedLabel{display:block}.signalPanel:not(.pulse) #speedLabel{display:none}
.chat{height:min(36svh,320px)}
@media(min-width:850px){body.controller .chat{height:calc(100svh - 165px);min-height:0;max-height:calc(100svh - 165px)}}
.instructionsButton{border:1px solid #4b5362;border-radius:99px;background:#242934;color:#d7dce5;padding:7px 10px;font-size:.72rem;font-weight:800}.instructionsPopup{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:18px;background:#05070bd9;opacity:0;visibility:hidden;transition:.18s;cursor:pointer}.instructionsPopup.visible{opacity:1;visibility:visible}.instructionsCard{width:min(90vw,390px);padding:22px;border:1px solid #596273;border-radius:22px;background:linear-gradient(155deg,#292f3a,#171a21);box-shadow:0 28px 90px #000d;cursor:pointer}.instructionsCard>strong{display:block;font-size:1.15rem;margin-bottom:12px}.instructionsCard ul{margin:0;padding-left:19px;color:#e8ebf1;line-height:1.42}.instructionsCard li+li{margin-top:7px}.instructionsCard small{display:block;margin-top:15px;color:#9ba4b4;line-height:1.4}
.control .stepper output{justify-self:end}.control .stepper>span{justify-self:start;margin-left:4px}
.chatTitleActions{display:flex;align-items:center;gap:7px}.chatFocus{width:32px;height:32px;padding:0;border:1px solid #4b5362;border-radius:10px;background:#242934;color:#dce2ec;display:grid;place-items:center}.chatFocus svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}body.wearer.chatFocused{overflow:hidden}body.wearer.chatFocused main{height:100svh;overflow:hidden}body.wearer.chatFocused .control{display:flex;align-items:center;gap:8px;padding:5px 10px;min-height:48px}body.wearer.chatFocused .control>.panelTitle,body.wearer.chatFocused .control .channel>label,body.wearer.chatFocused .control .channel>.channelWave{display:none}body.wearer.chatFocused .control .channel{display:flex;flex:1;margin:0;padding:0;border:0;grid-template:none}body.wearer.chatFocused .control .channel>.stepper{display:flex;width:100%;height:38px;justify-content:center;align-items:center;gap:2px}body.wearer.chatFocused .control .channel>.stepper output{font-size:2rem}body.wearer.chatFocused .control .channel.a>.stepper:before{content:'A';color:var(--a);font-size:.7rem;font-weight:900;margin-right:3px}body.wearer.chatFocused .control .channel.b>.stepper:before{content:'B';color:var(--b);font-size:.7rem;font-weight:900;margin-right:3px}body.wearer.chatFocused .feedback,body.wearer.chatFocused #wearerSetup{display:none!important}body.wearer.chatFocused .chat{height:calc(100svh - 155px);min-height:0;max-height:none;flex:1}body.wearer.chatFocused .messages{padding:9px 0}.chatFocused .chatFocus svg{transform:rotate(45deg)}
.liveButton{width:32px;height:32px;padding:0;border:1px solid #4b5362;border-radius:10px;background:#242934;color:#dce2ec;display:grid;place-items:center}.liveButton svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.liveButton.broadcasting{color:#fff;border-color:#e34b62;background:#7b2031;animation:recordPulse 1.2s infinite}.liveButton.watching{color:#8fc2ff;border-color:#4f90ff;background:#263a62}.livePanel{--live-height:min(34svh,290px);position:fixed;z-index:38;right:14px;top:max(76px,env(safe-area-inset-top));width:min(430px,calc(100vw - 28px));margin:0;padding-top:30px;border-radius:17px;overflow:hidden;border:1px solid #596170;background:#080a0f;box-shadow:0 18px 60px #000c,0 0 0 1px #ffffff08;touch-action:none}.livePanel video.remoteLive{display:block;width:100%;height:var(--live-height);object-fit:contain;background:#050608}.livePanel.localOnly video.remoteLive{display:none}.livePanel video.localLive{position:absolute;right:8px;bottom:8px;width:27%;max-width:115px;aspect-ratio:3/4;object-fit:cover;border:2px solid #7e8796;border-radius:11px;background:#050608;box-shadow:0 6px 22px #000b}.livePanel.localOnly video.localLive{position:static;display:block!important;width:100%;max-width:none;height:var(--live-height);aspect-ratio:auto;object-fit:contain;border:0;border-radius:0;box-shadow:none}.livePanel span{position:absolute;inset:0 0 auto 0;height:30px;padding:0 12px;display:flex;align-items:center;background:linear-gradient(180deg,#242936,#171a22);color:#ff667a;font-size:.65rem;font-weight:900;letter-spacing:.08em;cursor:move;user-select:none}.liveResize{position:absolute;right:0;bottom:0;width:28px;height:28px;background:linear-gradient(135deg,transparent 48%,#9aa3b4 49%,#9aa3b4 56%,transparent 57%,transparent 67%,#9aa3b4 68%,#9aa3b4 75%,transparent 76%);cursor:nwse-resize;touch-action:none;filter:drop-shadow(0 0 3px #000)}
.control .channel>.stepper{grid-template-columns:42px minmax(0,1fr) 42px}.control .stepper>.intensityReadout{display:flex;align-items:baseline;justify-content:center;gap:4px;justify-self:stretch;margin:0}.control .intensityReadout output{justify-self:auto}.control .intensityReadout>span{justify-self:auto;margin:0}
.chat form{align-items:end}.chat textarea{display:block;width:100%;min-width:0;height:42px;max-height:96px;resize:none;overflow:hidden;border:1px solid #3b4250;background:#0f1217;color:#fff;border-radius:14px;padding:10px 13px;font:inherit;line-height:1.3;transition:height .16s ease,border-color .16s}.chat textarea:focus{outline:none;border-color:#5a77a8}.chat textarea.scrolling{overflow-y:auto}
.messagePopup.arrival{width:min(91vw,520px);padding:0;border:0;background:transparent;box-shadow:0 0 0 100vmax #05070be8;overflow:visible}.arrivalCard{min-height:min(64svh,540px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px 24px;border:1px solid #794e9c;border-radius:30px;background:radial-gradient(circle at 50% 35%,#5a246f 0,#24162f 42%,#11131a 78%);box-shadow:0 28px 100px #000,0 0 60px #bc4cff44;animation:arrivalReveal .5s cubic-bezier(.2,.85,.25,1.15)}.arrivalCard small{color:#d39cff;font-size:.72rem;font-weight:900;letter-spacing:.18em}.arrivalAvatar{width:104px;height:104px;border-radius:50%;object-fit:cover;display:grid;place-items:center;margin:22px 0 16px;border:3px solid #c36aff;background:#31213c;color:#fff;font-size:2.5rem;font-weight:950;box-shadow:0 0 0 8px #bc4cff16,0 10px 38px #000a}.arrivalCard strong{max-width:100%;font-size:clamp(2rem,10vw,3.6rem);line-height:.98;overflow-wrap:anywhere}.arrivalCard>span{margin-top:10px;color:#d9d3df;font-size:1.15rem}.arrivalCard b{display:block;margin-top:20px;font-size:4.2rem;line-height:1;animation:devilBounce .75s .35s both}@keyframes arrivalReveal{from{opacity:0;transform:scale(.78) translateY(28px)}}@keyframes devilBounce{0%{opacity:0;transform:scale(.3) rotate(-18deg)}65%{transform:scale(1.18) rotate(7deg)}100%{opacity:1;transform:scale(1)}}
.messagePopup.photoCinematic{width:min(94vw,620px);padding:0;border:0;background:transparent;box-shadow:0 0 0 100vmax #05070bf0;overflow:visible}.photoRevealCard{min-height:min(70svh,650px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px 20px;border:1px solid #794e9c;border-radius:30px;background:radial-gradient(circle at 50% 38%,#4a205b 0,#21162b 43%,#101219 80%);box-shadow:0 30px 110px #000,0 0 70px #bc4cff44;animation:arrivalReveal .5s cubic-bezier(.2,.85,.25,1.15)}.photoRevealCard small{color:#d39cff;font-size:.72rem;font-weight:900;letter-spacing:.18em;margin-bottom:16px}.photoRevealCard img{display:block;width:100%;height:auto;max-height:52svh;object-fit:contain;border-radius:20px;border:2px solid #7f538f;background:#090b10;box-shadow:0 18px 55px #000b}.photoRevealCard strong{margin-top:15px;font-size:clamp(1.5rem,7vw,2.6rem);line-height:1.05}
.signalPanel.pulse #speedLabel,.signalPanel.pulse #depthLabel{display:block}.signalPanel:not(.pulse) #speedLabel,.signalPanel:not(.pulse) #depthLabel{display:none}
