/* Customer and professional shell. Existing trade imagery stays intact. */
.mobile-service-shell{--shell-accent:#087e8b;--shell-ink:#183347;--shell-muted:#526c7b}
.mobile-service-shell #app{max-width:1120px;padding-top:18px}
.mobile-service-shell .panel{border-radius:20px;border-color:#dfe9ec;box-shadow:0 5px 22px #19374908}
.mobile-service-shell .heading{margin-bottom:20px}
.mobile-service-shell .heading h1{line-height:1.35}
.mobile-service-shell button,.mobile-service-shell .button{border-radius:12px;min-height:44px}
.mobile-service-shell button.primary{background:var(--shell-accent);border-color:var(--shell-accent)}
.mobile-service-shell .service-request-cta{margin-top:12px;background:#fff!important;color:#075e68;border:0;padding:12px 24px}
.mobile-service-shell .service-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px}
.mobile-service-shell .service-overview button{background:#fffffff5;border:1px solid #dfe9ec;padding:18px;text-align:start;box-shadow:0 5px 22px #19374908;border-radius:18px;display:flex;flex-direction:column;gap:10px;color:var(--shell-ink)}
.mobile-service-shell .service-overview button:before{display:none}
.mobile-service-shell .service-overview span{font-size:14px;color:var(--shell-muted)}
.mobile-service-shell .service-overview strong{font-size:26px;line-height:1.3}
.mobile-service-shell .service-bottom-nav{display:flex;align-items:center;gap:8px;position:relative;z-index:20;background:#fff;border:1px solid #dfe9ec;border-radius:18px;padding:10px;margin-bottom:22px}
.mobile-service-shell .service-bottom-nav>button,.mobile-service-shell .service-bottom-nav>a,.mobile-service-shell .service-more>summary{display:flex;align-items:center;justify-content:center;gap:5px;margin:0;padding:10px 14px;color:var(--shell-ink);border:0;background:transparent;text-decoration:none;font-weight:600;cursor:pointer;min-height:44px}
.mobile-service-shell .service-bottom-nav .selected{background:#e4f3f2!important;color:#086772!important}
.mobile-service-shell .service-bottom-nav>button:before,.mobile-service-shell .service-bottom-nav>a:before{margin:0}
.mobile-service-shell .service-more{position:relative;margin-inline-start:auto;flex-shrink:0}
.mobile-service-shell .service-more>summary{list-style:none;border-radius:12px}
.mobile-service-shell .service-more>summary::-webkit-details-marker{display:none}
.mobile-service-shell .service-more>summary:before{content:'•••';font-size:19px;line-height:18px;letter-spacing:2px;color:#7c3aed}
.mobile-service-shell .service-more-menu{position:absolute;inset-inline-end:0;top:calc(100% + 12px);width:260px;max-width:calc(100vw - 32px);padding:12px;background:#fff;border:1px solid #dfe9ec;border-radius:18px;box-shadow:0 14px 50px #15333e30;display:flex;flex-direction:column;gap:6px}
.mobile-service-shell .service-more:not([open]) .service-more-menu{display:none}
.mobile-service-shell .service-more-menu button,.mobile-service-shell .service-more-menu a{text-align:start;white-space:normal;background:#f4f8f9;color:var(--shell-ink);border:0;padding:12px}
.mobile-service-shell .service-more-menu a.service-delete-account{background:#a33131;color:#fff;border:2px solid #812525;font-weight:800;text-align:center;padding:14px 16px}
.mobile-service-shell .service-more-menu a.service-delete-account:focus-visible{outline:3px solid #f7b7b7;outline-offset:2px}
.mobile-service-shell .service-account-summary{display:flex;flex-direction:column;gap:8px;padding:10px;overflow-wrap:anywhere;color:var(--shell-ink)}
.mobile-service-shell .service-account-summary span{font-size:14px;color:var(--shell-muted);text-align:start}
.mobile-service-shell .has-invitations{position:relative}
.mobile-service-shell .has-invitations:after{content:attr(data-count);background:#087e8b;color:#fff;border-radius:20px;font-size:11px;min-width:18px;padding:1px 4px}
.mobile-service-shell .trade-choice-grid{scroll-margin-top:24px;gap:12px}
.mobile-service-shell .account-file-banner{border-radius:16px;margin:12px auto;max-width:1084px;background:#fffffff2;border:1px solid #dfe9ec}
.mobile-service-shell #toast{bottom:100px}
@media(max-width:760px){
 .mobile-service-shell{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
 .mobile-service-shell>header{padding:14px 18px;gap:10px;position:relative;background:#fffffff5}
 .mobile-service-shell>header .brand{font-size:25px}
 .mobile-service-shell>header .brand small,.mobile-service-shell>header .coverage{display:none}
 .mobile-service-shell>header nav{width:auto;margin-inline-start:auto;font-size:13px;gap:8px}
 .mobile-service-shell>header nav>span{display:none}
 .mobile-service-shell>header nav button{padding:8px 12px}
 .mobile-service-shell .language-settings{display:none}
 .mobile-service-shell #app{padding:12px 16px 28px}
 .mobile-service-shell .account-file-banner{margin:12px 16px 0;padding:12px 16px;font-size:13px}
 .mobile-service-shell .account-file-banner>strong{font-size:17px}
 .mobile-service-shell .panel{padding:18px;margin-bottom:16px}
 .mobile-service-shell .heading{padding:22px 20px;min-height:190px;border-radius:22px}
 .mobile-service-shell .heading h1{font-size:26px;max-width:100%}
 .mobile-service-shell .heading p{font-size:14px;max-width:100%}
 .mobile-service-shell .trade-header.has-trade-photo{min-height:210px}
 .mobile-service-shell .customer-grid .section-title{gap:8px}
 .mobile-service-shell .customer-grid .section-title h2{font-size:20px}
 .mobile-service-shell .trade-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
 .mobile-service-shell .trade-choice{padding:10px 4px!important;min-height:102px}
 .mobile-service-shell .service-bottom-nav{position:fixed;bottom:0;inset-inline:0;max-width:760px;width:100%;margin:0 auto;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid #dfe9ec;border-radius:20px 20px 0 0;box-shadow:0 -4px 24px #15333e10;gap:3px;z-index:1000}
 .mobile-service-shell .service-bottom-nav>button,.mobile-service-shell .service-bottom-nav>a,.mobile-service-shell .service-more>summary{flex:1;flex-direction:column;gap:6px;padding:8px 2px;font-size:12px;line-height:1.4;min-height:60px;min-width:0;text-align:center;white-space:normal}
 .mobile-service-shell .service-bottom-nav>button:before,.mobile-service-shell .service-bottom-nav>a:before{display:block;width:20px;height:20px}
 .mobile-service-shell .service-more{flex:1;margin:0;min-width:0}
 .mobile-service-shell .service-more-menu{top:auto;bottom:calc(100% + 18px);max-height:65vh;overflow:auto}
 .mobile-service-shell .has-invitations:after{position:absolute;top:0;inset-inline-end:12%}
 .mobile-service-shell [data-sync-now]{font-size:13px;padding:8px 12px;margin-bottom:12px}
 .mobile-service-shell .service-current-job h3{overflow-wrap:anywhere}
 .mobile-service-shell .cards{gap:14px;grid-template-columns:minmax(0,1fr)}
 .mobile-service-shell .cards>.panel{min-width:0;overflow-wrap:anywhere}
 .mobile-service-shell .cards select,.mobile-service-shell .cards input{max-width:100%;min-width:0}
 .mobile-service-shell footer{padding:20px 18px}
}
