/* V80x: stable help desk, profile, historical orders and town entrance. */
.ca80w-food-rate-shortcut[hidden],.ca80x-food-rates-modal[hidden]{display:none!important}
body[data-area-role="admin"] .ca80w-food-rate-shortcut:not([hidden]){position:fixed!important;z-index:95000!important;bottom:calc(72px + env(safe-area-inset-bottom))!important;right:12px!important;left:auto!important;max-width:min(420px,calc(100vw - 24px))!important;width:auto!important;margin:0!important;padding:12px 16px!important;border-radius:16px!important;box-shadow:0 8px 24px #0002!important}
.ca80x-food-rates-modal:not([hidden]){position:fixed!important;inset:3vh max(8px,calc((100vw - 720px)/2)) 3vh!important;z-index:97000!important;max-width:720px!important;max-height:94dvh!important;overflow:auto!important;padding:22px!important;background:#fff!important;box-shadow:0 0 0 300vmax #001926a8,0 12px 36px #0002!important;border-radius:24px!important}
.ca80x-close-food{position:sticky;float:right;top:0;border:1px solid #dbe4ed;border-radius:12px;background:#fff;color:#264153;padding:10px;z-index:2;font-weight:700}
body[data-area-role="admin"] [data-area-section="helpdesk"] details.compact-block.ca80x-always-open>summary{display:none!important}
body[data-area-role="admin"] [data-area-section="helpdesk"] details.compact-block.ca80x-always-open>.compact-content{display:block!important;padding:0!important}
body[data-area-role="admin"] #root > .card.section details.compact-block.ca80x-always-open>summary{display:none!important}
body[data-area-role="admin"] #root > .card.section details.compact-block.ca80x-always-open>.compact-content{display:block!important}
.ca80x-page{max-width:800px;margin:0 auto;padding-bottom:108px!important}
.ca80x-person,.ca80x-contact,.ca80x-profile-links,.ca80x-order,.ca80x-dialog{background:#fff!important;border:1px solid #dce6ed;border-radius:20px;box-shadow:0 5px 18px #143a5310;color:#233845}
.ca80x-person{display:flex;gap:15px;padding:18px;margin:16px 0;align-items:center}.ca80x-person>div{min-width:0;display:flex;flex-direction:column;gap:6px}.ca80x-person strong{font-size:18px}.ca80x-person small,.ca80x-private{font-size:12px;color:#667a84;overflow-wrap:anywhere}
.ca80x-photo{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;width:100px;flex:0 0 100px}
.ca80x-photo-preview{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:#e7f0f5;overflow:hidden;font-size:38px;border:3px solid #fff;box-shadow:0 2px 9px #18384624}
.ca80x-photo-preview img{width:100%;height:100%;object-fit:cover}.ca80x-camera{font-size:10px;font-weight:800;color:#175e90;text-align:center}
.ca80x-contact{padding:18px;margin-bottom:14px}.ca80x-contact h3{margin:0 0 5px}.ca80x-contact p{font-size:13px;color:#627887}.ca80x-contact label{display:flex;flex-direction:column;gap:8px;font-weight:750}.ca80x-contact input{width:100%;padding:13px;border-radius:12px;border:1px solid #cbdce5;background:#fff;color:#152b39;font-size:16px}.ca80x-contact .food-checkout{margin-top:12px}.ca80x-feedback{min-height:20px;font-weight:700}
.ca80x-profile-links{display:flex;flex-direction:column;overflow:hidden;margin:14px 0}.ca80x-profile-links button{display:flex;align-items:center;gap:12px;padding:16px;background:#fff!important;color:#193848!important;border:0;border-bottom:1px solid #edf1f4!important;text-align:left!important;font-size:16px;font-weight:750;cursor:pointer}.ca80x-profile-links button span{flex:1}.ca80x-profile-links button b{font-size:22px;color:#758995}
.ca80x-order-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.ca80x-order-tabs button{border-radius:14px!important;border:1px solid #cadbe6;padding:13px;background:#f4f8fb!important;color:#29445a;font-weight:800;cursor:pointer}.ca80x-order-tabs button.active{background:#ffebdb!important;color:#8b3800!important;border-color:#ffb36d!important}.ca80x-order-tabs b{margin-left:5px}
.ca80x-order-list{display:grid;gap:10px}.ca80x-order{display:flex;align-items:center;width:100%;text-align:left!important;gap:12px;padding:13px;cursor:pointer}.ca80x-order-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;background:#f3f7fa;display:grid;place-items:center;font-size:24px}.ca80x-order-middle{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}.ca80x-order-middle>b{font-size:14px}.ca80x-order-middle small{color:#627787;font-size:11px}.ca80x-order-status{display:inline-block;align-self:flex-start;padding:7px 10px;background:#fff0dc;color:#904200;border-radius:9px;font-size:12px;font-weight:900}.ca80x-order-status.is-finished{background:#e8f7ed;color:#226a44}.ca80x-order-right{display:flex;flex-direction:column;align-items:end;gap:6px;white-space:nowrap}.ca80x-order-right strong{font-size:13px}.ca80x-order-right b{font-size:23px;color:#8999a3}.ca80x-empty{padding:23px;text-align:center;color:#687885;background:#f7fafb;border-radius:13px}
.ca80x-overlay{position:fixed;inset:0;z-index:99000;background:#152b35b0;display:flex;align-items:center;justify-content:center;padding:12px}
.ca80x-dialog{position:relative;width:min(100%,540px);max-height:90dvh;overflow:auto;padding:25px 18px}.ca80x-close{position:absolute;right:14px;top:14px;background:#eef3f6;color:#20435c;border:0;border-radius:12px;width:38px;height:38px;cursor:pointer}.ca80x-dialog h2{padding-right:42px;font-size:21px}.ca80x-dialog h3{font-size:17px}.ca80x-dialog form{display:flex;flex-direction:column;gap:12px}.ca80x-dialog label{display:flex;flex-direction:column;gap:6px;font-weight:700}.ca80x-dialog select,.ca80x-dialog textarea{width:100%;border:1px solid #d4e1e7;border-radius:12px;padding:12px;background:#fff;color:#16384b;font-size:16px}.ca80x-dialog textarea{min-height:95px}.ca80x-products{display:flex;flex-direction:column;gap:8px;margin:15px 0}.ca80x-products>div{display:flex;align-items:start;gap:10px;justify-content:space-between;padding:12px;background:#f7fafc;border-radius:12px}.ca80x-products span{min-width:0;display:flex;flex-direction:column;gap:3px}.ca80x-products b{font-size:13px}.ca80x-products small{overflow-wrap:anywhere;color:#687887;font-size:11px}.ca80x-total{display:flex;justify-content:space-between;border-top:1px solid #dbe6ed;padding:15px 0;font-size:18px;font-weight:800}.ca80x-rider{display:flex;gap:12px;align-items:center;padding:12px;border-radius:14px;background:#f0f8ff}.ca80x-rider-photo{width:50px;height:50px;overflow:hidden;border-radius:50%;display:grid;place-items:center;background:#dceaf5;font-size:25px}.ca80x-rider-photo img{width:100%;height:100%;object-fit:cover}.ca80x-rider span:last-child{display:flex;flex-direction:column;gap:4px}
/* Illustrated, interactive compact mini-city in place of the wheel. */
body:has(.ca80x-town) #bubble-screen{height:calc(100dvh - 100px);min-height:0!important;overflow:hidden!important}
.ca80x-town{height:100%;max-height:100%;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px 12px;color:#123953;background:linear-gradient(180deg,#c9ecff 0%,#e6f5ff 55%,#b9e5b4 56%,#95cd92 100%);isolation:isolate}
.ca80x-town h1{position:relative;z-index:1;margin:0 0 4px;font-size:clamp(22px,5vw,32px);line-height:1.13;font-weight:900;text-align:center;text-shadow:0 1px white}
.ca80x-town>p{position:relative;z-index:1;margin:0;font-size:13px;font-weight:650}
.ca80x-sky{position:absolute;inset:0;pointer-events:none;overflow:hidden}.ca80x-sun{position:absolute;top:7%;right:11%;width:60px;height:60px;background:#ffdc70;border-radius:50%;box-shadow:0 0 20px #fff8aa;animation:ca80xSun 4s ease-in-out infinite alternate}.ca80x-cloud{position:absolute;top:13%;font-size:55px;color:white;text-shadow:0 1px 4px #fff;animation:ca80xCloud 14s linear infinite}.ca80x-cloud.cloud-one{left:-10%}.ca80x-cloud.cloud-two{left:58%;top:20%;font-size:36px;animation-duration:19s}
.ca80x-town-land{width:min(100%,700px);height:min(55dvh,390px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:relative;gap:13px;align-items:end;margin-top:12px}.ca80x-building{height:72%;min-height:165px;align-self:end;position:relative;border:4px solid #28465d;border-radius:14px 14px 8px 8px;box-shadow:5px 7px #21574855;background:#ffcf92;color:#233a4b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:transform .16s ease;font-size:16px;z-index:2;padding:13px 4px}.ca80x-building:active{transform:translateY(6px)}.ca80x-building.restaurant{background:linear-gradient(180deg,#fff2c7,#fbc989)}.ca80x-building.courier{background:linear-gradient(180deg,#d5efff,#7dc9f1)}.ca80x-roof{position:absolute;top:-21px;width:106%;height:28px;background:#db654c;border:4px solid #28465d;border-radius:13px 13px 5px 5px}.ca80x-building.courier .ca80x-roof{background:#4c94c2}.ca80x-sign{display:block;width:94%;background:#fff;border:2px solid #3d5161;border-radius:9px;padding:8px 3px;font-size:clamp(11px,3vw,15px);font-weight:900;box-shadow:2px 3px #345a6c22}.ca80x-windows{font-size:clamp(20px,4.5vw,28px);white-space:nowrap}.ca80x-building strong{background:#f28b30;color:#fff;border-radius:24px;padding:9px 19px;font-size:13px}.ca80x-building.courier strong{background:#2778a8}.ca80x-trees{position:absolute;bottom:90%;right:1%;z-index:-1;font-size:39px}.ca80x-future{position:absolute;bottom:100%;left:0;display:flex;gap:5px;flex-direction:column;align-items:center;font-size:29px;transform:scale(.7);transform-origin:left bottom}.ca80x-future small{font-size:10px;font-weight:900;color:#365c67}
.ca80x-road{position:relative;margin-top:20px;height:50px;width:130%;flex:0 0 50px;background:#596c75;border-top:4px solid #fff;border-bottom:4px solid #fff;overflow:hidden}.ca80x-road:after{content:'';position:absolute;inset:50% 0 auto;border-top:3px dashed #ffdd68}.ca80x-scooter{position:absolute;bottom:0;left:-70px;font-size:42px;z-index:1;animation:ca80xRide 7s linear infinite}.ca80x-town-footer{font-size:11px;color:#174831;text-align:center;font-weight:750;margin-top:8px}.ca80x-shipping{max-width:600px;margin:auto;padding:30px 14px}.ca80x-shipping-soon{padding:20px;border-radius:16px;background:#fff4d9;color:#945f00;font-weight:800}
@keyframes ca80xRide{to{left:110%}}@keyframes ca80xSun{to{transform:scale(1.15)}}@keyframes ca80xCloud{to{transform:translateX(105vw)}}
@media(max-width:450px){.ca80x-town-land{height:43dvh;min-height:220px;margin-top:28px}.ca80x-building{min-height:165px}.ca80x-town h1{font-size:21px}.ca80x-road{margin-top:14px}.ca80x-town-footer{font-size:10px}.ca80x-sign{font-size:11px}}
@media(max-height:690px){.ca80x-town-land{height:42dvh;min-height:170px}.ca80x-building{min-height:135px;gap:7px}.ca80x-roof{height:18px;top:-16px}.ca80x-road{height:34px;flex-basis:34px}.ca80x-scooter{font-size:30px}.ca80x-town h1{font-size:20px}}
@media(prefers-reduced-motion:reduce){.ca80x-scooter,.ca80x-cloud,.ca80x-sun{animation:none!important}}

/* CA153: Chat Rider on customer order card, separate actionable control */
.ca153-customer-rider-chat{display:block;width:100%;margin:4px 0 12px;padding:11px 15px;border:1px solid #c8d8e5;border-radius:12px;background:#f2f7fb;color:#15518b;font-weight:800;text-align:center;cursor:pointer} .ca105-direct-label{display:block;padding:8px 12px;font-weight:700;text-align:center}

/* V96: pulsante chat in riga interna all'ordine, non nascosto a destra. */
.ca153-chat-row{width:100%;box-sizing:border-box;display:block;clear:both;margin:-6px 0 12px;padding:0 12px 10px;border:1px solid #e3eaf0;border-top:0;border-radius:0 0 14px 14px;overflow:visible}
.ca153-chat-row .ca153-customer-rider-chat{box-sizing:border-box;width:100%;max-width:100%;margin:0;position:static;transform:none;white-space:normal;min-height:40px}
#ca81d-rider-map-detail .ca76-rider-chat,#ca81d-rider-map-detail .ca76-rider-chat>span:nth-child(2){text-align:left!important;align-items:flex-start!important}
