/* Existing Olive phone components, reused from dist/index.html. */
.phone{width:270px;height:550px;position:absolute;bottom:0;left:50%;margin-left:-135px;border-radius:47px;padding:5px;background:linear-gradient(105deg,#e3e4d5,#707969 15%,#bfc3b0 34%,#f1f1e5 63%,#6f7868);box-shadow:1px 1px 0 #f6f6e8 inset,-1px -1px 0 #52594d inset,12px 24px 33px -12px #233d353b;transform-origin:center bottom;transform:rotate(-5deg) scale(var(--device-scale));will-change:transform,opacity}.phone:before{content:'';position:absolute;width:3px;height:62px;right:-2px;top:119px;border-radius:2px;background:#77816d}.phone:after{content:'';position:absolute;width:3px;height:55px;left:-2px;top:128px;border-radius:2px;background:#77816d}.screen{position:relative;width:100%;height:100%;overflow:hidden;border:3px solid #18251b;border-radius:42px;background:#fff;color:#111;font-family:Arial,sans-serif}.phone-status{height:48px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:11px;font-weight:600}.island{position:absolute;width:78px;height:23px;top:10px;left:50%;transform:translateX(-50%);background:#111613;border-radius:20px}.status-icons{display:flex;align-items:center;gap:4px}.status-icons svg{width:12px;height:10px}.status-icons svg.battery{width:19px;height:10px}.home-bar{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);width:90px;height:4px;background:currentColor;border-radius:8px;opacity:.9}.call-screen{background:linear-gradient(155deg,#789080 0%,#506d5b 50%,#243e32 100%);color:white}.call-contact{text-align:center;margin-top:42px}.call-time{font-size:17px;color:#d2ded5;letter-spacing:.4px}.call-contact strong{font-weight:400;font-size:40px;display:block;margin-top:5px;letter-spacing:-.8px}.call-waves{position:absolute;top:218px;left:0;right:0;display:flex;justify-content:center;gap:4px;height:29px;align-items:center;opacity:.45}.call-waves i{display:block;width:3px;border-radius:5px;background:#dae4d4;height:var(--bar,14px)}.call-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 11px;position:absolute;bottom:49px;left:20px;right:20px}.control{text-align:center;font-size:10px;font-weight:400}.control-disc{width:55px;height:55px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff20;margin:auto auto 7px}.control-disc svg{width:26px;height:26px}.control.end .control-disc{background:#ef534d}.control.dim{opacity:.48}.text-contact{position:relative;text-align:center;padding:4px 0 9px;border-bottom:1px solid #eeeeef;background:#fbfbfc}.avatar{height:35px;width:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 4px;background:#b3b4b7;color:white;font-size:25px}.contact-name{font-size:10px}.contact-back,.contact-video{position:absolute;top:17px;color:#0785ff}.contact-back{left:13px;font-size:30px;line-height:1}.contact-video{right:16px}.contact-video svg{width:23px;height:23px}.messages{padding:10px 11px}.timestamp{font-size:8px;color:#86868b;text-align:center;margin:1px 0 12px}.bubble{max-width:86%;width:fit-content;border-radius:14px;padding:10px 11px;font-size:12.2px;line-height:1.27;margin-bottom:8px;letter-spacing:-.1px}.outgoing{margin-left:auto;background:#3478f6;color:white;border-bottom-right-radius:4px}.incoming{background:#e9e9eb;color:#171719;border-bottom-left-radius:4px}.composer{position:absolute;left:13px;right:13px;bottom:29px;display:flex;gap:8px;align-items:center;color:#909094;font-size:22px}.composer-field{flex:1;border:1px solid #d8d8dd;border-radius:20px;padding:7px 10px;font-size:11px;display:flex;justify-content:space-between}.composer-field svg{height:13px;width:12px}
