.reality-coffee,.reality-sms,.reality-sms-followup{background:#031018}
.reality-coffee>img,.reality-sms>img,.reality-sms-followup>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;animation:living-photo 3.8s ease-out both}
.reality-coffee>img{animation-name:sofa-calm;transform-origin:40% 48%}
.reality-coffee:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 48%,rgba(255,210,144,.12),transparent 25%),linear-gradient(90deg,transparent 48%,rgba(0,0,0,.22));pointer-events:none}
.coffee-steam{position:absolute;z-index:5;left:35.8%;bottom:51%;width:70px;height:100px;filter:blur(.3px);transform:translateX(-50%);transform-origin:center bottom}
.coffee-steam i{position:absolute;left:7px;bottom:0;width:12px;height:70px;border-radius:50%;border-left:3px solid rgba(255,255,255,.72);opacity:0;animation:steam-rise 2.2s infinite ease-out}
.coffee-steam i:nth-child(2){left:28px;height:82px;animation-delay:.55s}.coffee-steam i:nth-child(3){left:49px;height:62px;animation-delay:1.05s}
.coffee-caption{position:absolute;z-index:6;right:5%;bottom:7%;width:min(46%,330px);padding:12px 14px;border-left:3px solid #63efd7;background:rgba(2,17,23,.86);color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.4);animation:caption-soft-in 3.6s ease both}
.coffee-caption small,.coffee-caption strong{display:block}.coffee-caption small{margin-bottom:5px;color:#63efd7;font:900 8px/1 monospace;letter-spacing:.14em}.coffee-caption strong{font-size:14px;line-height:1.18}
.reality-later{display:grid!important;place-content:center;justify-items:center;padding:8%;text-align:center;background:radial-gradient(circle,#132d36,#02090d 67%);color:#fff;isolation:isolate}
.reality-later small{color:#ffca67;font:900 9px/1 monospace;letter-spacing:.2em;animation:later-copy 1.8s ease both}.reality-later strong{position:relative;z-index:2;margin:12px 0 8px;max-width:15ch;font-size:clamp(30px,7vw,70px);font-weight:1000;line-height:.9;letter-spacing:-.055em;text-transform:uppercase;text-shadow:3px 3px 0 #ff4e72,-2px -2px 0 #4de9d4;animation:later-title 1.8s cubic-bezier(.2,.9,.2,1) both}.reality-later p{position:relative;z-index:2;max-width:31ch;margin:0;color:#d7e5e5;font-size:12px;font-weight:750;line-height:1.35;animation:later-copy 1.8s .22s ease both}
.time-rings{position:absolute;z-index:-1;inset:0;display:grid;place-items:center}.time-rings i{position:absolute;width:90px;height:90px;border:1px solid rgba(77,233,212,.35);border-radius:50%;animation:time-ring 1.8s infinite ease-out}.time-rings i:nth-child(2){animation-delay:.45s}.time-rings i:nth-child(3){animation-delay:.9s}
.reality-sms>img{animation-duration:4.5s;transform-origin:37% 44%;filter:brightness(.82)}.phone-vibration{position:absolute;z-index:5;left:41%;top:37%;color:#6ef2db;font-size:34px;font-weight:1000;opacity:0;animation:phone-buzz 4.5s ease both}
.sms-notification{position:absolute;z-index:7;right:4%;top:8%;width:min(51%,370px);padding:13px;border:1px solid rgba(255,255,255,.42);border-radius:16px;background:rgba(246,250,248,.96);color:#142126;box-shadow:0 20px 55px rgba(0,0,0,.55),0 0 0 1px rgba(73,222,201,.45);transform-origin:top right;animation:sms-arrive 4.5s cubic-bezier(.18,.85,.2,1) both}
.sms-notification header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;margin-bottom:9px;padding-bottom:8px;border-bottom:1px solid #d9e3e1}.sms-notification header i{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#e13a4f;color:#fff;font-style:normal;font-weight:1000}.sms-notification header span{color:#3b5559;font:900 8px/1 monospace;letter-spacing:.08em}.sms-notification time{color:#809093;font:700 7px/1 monospace}.sms-notification>small{display:block;margin-bottom:5px;color:#c3263c;font:1000 8px/1 monospace;letter-spacing:.12em}.sms-notification p{margin:0;font-size:12px;font-weight:850;line-height:1.28}
.reality-sms-followup>img{filter:brightness(.35) blur(1px);transform-origin:37% 44%;animation-duration:4.5s}.reality-sms-followup:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(225,58,79,.18),transparent 42%),rgba(1,8,13,.42)}
.sms-escalation{position:absolute;z-index:7;left:50%;top:50%;width:min(88%,650px);padding:clamp(18px,4vw,34px);border:1px solid rgba(255,255,255,.5);border-radius:20px;background:rgba(248,251,249,.98);color:#142126;box-shadow:0 28px 85px rgba(0,0,0,.72),0 0 0 1px rgba(225,58,79,.42);transform:translate(-50%,-50%);animation:sms-escalate 4.5s cubic-bezier(.18,.85,.2,1) both}.sms-escalation header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:clamp(15px,3vw,25px);padding-bottom:13px;border-bottom:1px solid #d9e3e1}.sms-escalation header i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e13a4f;color:#fff;font-style:normal;font-weight:1000}.sms-escalation header span{color:#3b5559;font:900 clamp(9px,1.6vw,12px)/1 monospace;letter-spacing:.11em}.sms-escalation time{color:#809093;font:700 8px/1 monospace}.sms-escalation>small{display:block;margin-bottom:11px;color:#c3263c;font:1000 clamp(9px,1.6vw,12px)/1 monospace;letter-spacing:.14em}.sms-escalation>strong{display:block;max-width:25ch;font-size:clamp(20px,4.2vw,38px);font-weight:950;line-height:1.08;letter-spacing:-.035em}
.store-error h2{max-width:11ch}.store-error main>strong{border-color:#b51830;color:#b51830}
@keyframes living-photo{from{transform:scale(1.035) translateX(1%)}to{transform:scale(1.11) translateX(-1.5%)}}
@keyframes sofa-calm{from{transform:scale(1.02) translate3d(.7%,.4%,0)}to{transform:scale(1.085) translate3d(-.8%,-.5%,0)}}
@keyframes steam-rise{0%{opacity:0;transform:translate(0,10px) scaleX(.72)}24%{opacity:.72}70%{opacity:.26}100%{opacity:0;transform:translate(5px,-30px) scaleX(1.25)}}
@keyframes caption-soft-in{0%,24%{opacity:0;transform:translateY(12px)}42%,100%{opacity:1;transform:none}}
@keyframes later-title{0%{opacity:0;transform:scale(1.35);filter:blur(8px)}22%,78%{opacity:1;transform:none;filter:none}100%{opacity:0;transform:scale(.96)}}
@keyframes later-copy{0%,18%{opacity:0;transform:translateY(8px)}36%,82%{opacity:1;transform:none}100%{opacity:0}}
@keyframes time-ring{0%{opacity:.65;transform:scale(.35)}100%{opacity:0;transform:scale(4)}}
@keyframes phone-buzz{0%,22%{opacity:0;transform:translateX(0)}25%{opacity:1;transform:translateX(-5px)}28%{transform:translateX(6px)}31%{transform:translateX(-4px)}35%,100%{opacity:0;transform:none}}
@keyframes sms-arrive{0%,25%{opacity:0;transform:translateY(-28px) scale(.9)}38%,92%{opacity:1;transform:none}100%{opacity:1;transform:scale(1.01)}}
@keyframes sms-escalate{0%,14%{opacity:0;transform:translate(-50%,-42%) scale(.82);filter:blur(7px)}28%,90%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none}100%{opacity:1;transform:translate(-50%,-50%) scale(1.015)}}
@media(max-width:600px){.coffee-steam{left:25%;bottom:54%;transform:translateX(-50%) scale(.72)}.coffee-caption{right:3%;bottom:5%;width:49%;padding:9px 10px}.coffee-caption strong{font-size:11px}.reality-later strong{font-size:34px}.reality-later p{font-size:10px}.sms-notification{right:3%;top:6%;width:53%;padding:10px;border-radius:12px}.sms-notification p{font-size:10px}.phone-vibration{left:43%;top:38%;font-size:25px}.sms-escalation{width:91%;padding:20px 17px;border-radius:16px}.sms-escalation header{margin-bottom:16px;padding-bottom:11px}.sms-escalation>strong{font-size:clamp(21px,6.2vw,30px);line-height:1.1}}

/* Split-message emphasis: the problem must register at a glance. */
.sms-notification>small{margin-bottom:6px;font-size:9px}.sms-notification p{font-size:clamp(14px,2.5vw,19px);font-weight:900;line-height:1.22}.sms-escalation>strong{max-width:22ch;font-size:clamp(25px,5vw,46px);font-weight:1000;line-height:1.02;letter-spacing:-.045em}.sms-escalation>p{max-width:39ch;margin:clamp(14px,2.5vw,22px) 0 0;color:#53656a;font-size:clamp(13px,2vw,18px);font-weight:800;line-height:1.3}
@media(max-width:600px){.sms-notification{width:58%;padding:11px}.sms-notification p{font-size:13px;line-height:1.2}.sms-escalation{width:92%;padding:22px 18px}.sms-escalation>strong{font-size:clamp(27px,7.6vw,36px);line-height:1.02}.sms-escalation>p{font-size:14px;line-height:1.28}}

/* Full-frame SMS thread. It is visible from the first rendered moment. */
.reality-sms-followup>img{filter:brightness(.5);animation-duration:4.5s}.reality-sms-followup:after{background:rgba(1,8,13,.28)}
.sms-escalation{inset:3%;left:auto;top:auto;width:auto;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:26px;background:#f3f6f6;box-shadow:0 28px 85px rgba(0,0,0,.72),0 0 0 1px rgba(73,222,201,.38);transform:none;animation:sms-escalate 4.5s cubic-bezier(.18,.85,.2,1) both}
.sms-escalation header{height:54px;margin:0;padding:0 18px;border-bottom:1px solid #d6dfdf;background:rgba(250,252,252,.96)}.sms-escalation header i{width:29px;height:29px;border-radius:50%}.sms-escalation header span{font:900 clamp(10px,1.8vw,13px)/1 monospace}.sms-escalation header time{font-size:9px}
.sms-thread{height:calc(100% - 54px);display:flex;flex-direction:column;padding:clamp(16px,3.5vw,28px);background:linear-gradient(180deg,#eef4f4 0%,#f9fbfb 45%,#eef4f4 100%)}
.sms-contact{display:flex;align-items:center;gap:11px;margin-bottom:auto}.sms-contact>i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e13a4f;color:#fff;font-style:normal;font-weight:1000;box-shadow:0 5px 14px rgba(225,58,79,.28)}.sms-contact div small,.sms-contact div span{display:block}.sms-contact div small{color:#b52439;font:1000 clamp(10px,1.8vw,13px)/1 monospace;letter-spacing:.11em}.sms-contact div span{margin-top:5px;color:#849397;font:800 9px/1 monospace;letter-spacing:.12em}
.sms-message{position:relative;align-self:flex-start;width:min(94%,620px);margin-top:18px;padding:clamp(20px,4vw,34px) clamp(19px,4vw,32px) 17px;border-radius:26px 26px 26px 7px;background:#dfe5e6;color:#142126;box-shadow:0 10px 28px rgba(31,50,54,.16)}.sms-message:after{content:"";position:absolute;left:-7px;bottom:0;border-style:solid;border-width:0 12px 14px 0;border-color:transparent #dfe5e6 transparent transparent}.sms-message strong{display:block;max-width:22ch;font-size:clamp(25px,5vw,46px);font-weight:1000;line-height:1.02;letter-spacing:-.045em}.sms-message p{max-width:39ch;margin:clamp(14px,2.5vw,22px) 0 12px;color:#53656a;font-size:clamp(13px,2vw,18px);font-weight:800;line-height:1.3}.sms-message time{display:block;color:#819093;font:800 9px/1 monospace;text-align:right}
@keyframes sms-escalate{0%{opacity:1;transform:translateY(8px) scale(.985)}12%,100%{opacity:1;transform:none;filter:none}}
@media(max-width:600px){.sms-escalation{inset:2.5%;width:auto;padding:0;border-radius:22px}.sms-escalation header{height:48px;padding:0 13px}.sms-thread{height:calc(100% - 48px);padding:15px 14px}.sms-contact>i{width:34px;height:34px}.sms-message{width:96%;margin-top:13px;padding:19px 16px 14px;border-radius:21px 21px 21px 6px}.sms-message strong{font-size:clamp(26px,7.4vw,35px);line-height:1.02}.sms-message p{margin-top:14px;font-size:14px;line-height:1.26}}

/* Clean mobile-message layout: one contact header, two readable SMS bubbles. */
.sms-escalation{inset:4%;border-radius:24px;background:#f2f2f7}.sms-phone-header{position:relative!important;height:74px!important;display:grid!important;grid-template-columns:34px 1fr 34px!important;align-items:center!important;margin:0!important;padding:7px 14px 8px!important;background:rgba(249,249,251,.98)!important;border-bottom:1px solid #d4d4d8!important}.sms-phone-header .sms-back{color:#2589ff!important;font:500 31px/1 sans-serif!important;letter-spacing:0!important}.sms-phone-header>time{font:700 9px/1 monospace!important;color:#8a8a8f!important;text-align:right}.sms-profile{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;justify-self:center;min-width:0}.sms-profile>i{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e13a4f;color:#fff;font-style:normal;font-weight:1000}.sms-profile>strong{align-self:end;overflow:hidden;color:#202124;font:900 clamp(10px,1.7vw,13px)/1.1 monospace;letter-spacing:.07em;text-overflow:ellipsis;white-space:nowrap}.sms-profile>small{align-self:start;margin-top:3px;color:#8a8a8f;font:800 9px/1 monospace;letter-spacing:.1em}
.sms-escalation .sms-thread{height:calc(100% - 74px);display:flex;justify-content:center;padding:clamp(18px,3.5vw,28px);background:linear-gradient(180deg,#f2f2f7,#e9edf0)}.sms-escalation .sms-message{position:relative;width:auto;max-width:92%;margin:0 0 14px;padding:clamp(15px,3vw,22px) clamp(16px,3.2vw,24px);border-radius:22px 22px 22px 6px;background:#d7d7dc;box-shadow:none}.sms-escalation .sms-message:after{border-color:transparent #d7d7dc transparent transparent}.sms-escalation .sms-message-primary strong{font-size:clamp(22px,4vw,34px);font-weight:950;line-height:1.07;letter-spacing:-.035em}.sms-escalation .sms-message-secondary{background:#fff}.sms-escalation .sms-message-secondary:after{border-color:transparent #fff transparent transparent}.sms-escalation .sms-message-secondary p{margin:0;color:#303438;font-size:clamp(14px,2vw,18px);font-weight:750;line-height:1.32}.sms-thread-time{align-self:flex-start;margin:-5px 0 0 12px;color:#8a8a8f;font:700 9px/1 monospace}
@media(max-width:600px){.sms-escalation{inset:3%;border-radius:20px}.sms-phone-header{height:68px!important;padding:6px 10px 7px!important}.sms-profile{grid-template-columns:34px minmax(0,1fr);column-gap:7px;max-width:225px}.sms-profile>i{width:34px;height:34px}.sms-profile>strong{font-size:10px}.sms-escalation .sms-thread{height:calc(100% - 68px);justify-content:center;padding:16px 13px}.sms-escalation .sms-message{max-width:94%;margin-bottom:12px;padding:14px 15px}.sms-escalation .sms-message-primary strong{font-size:22px;line-height:1.08}.sms-escalation .sms-message-secondary p{font-size:14px;line-height:1.3}}

.sms-escalation .sms-message-primary{max-width:90%;padding:clamp(20px,4vw,30px)}.sms-escalation .sms-message-primary strong{font-size:clamp(25px,4.8vw,40px);line-height:1.08;letter-spacing:-.035em}.sms-escalation .sms-thread-time{margin-top:-4px}
@media(max-width:600px){.sms-escalation .sms-message-primary{max-width:92%;padding:19px 17px}.sms-escalation .sms-message-primary strong{font-size:24px;line-height:1.1}}
