/* NSM Mobile 0.7.0 – Field Service Design */
:root{--ink:#061a3d;--ink2:#0a2f6b;--electric:#1e78ff;--cyan:#2eb7ff;--canvas:#f3f7fc;--card:#fff;--stroke:#dfe7f1;--soft:#edf5ff;--text:#0b1e3d;--muted:#6b7c93}
html,body{background:#dce6f2}
.mobile-shell{background:linear-gradient(180deg,#061a3d 0 292px,#f7f9fd 292px 100%);box-shadow:0 30px 90px rgba(5,24,58,.24)}
.app-header{height:82px;padding:17px 23px;background:transparent;box-shadow:none}
.brand>svg{width:48px;height:48px}.brand strong{font-size:21px}.brand small{font-size:11px;color:#b8c9df}.header-side{gap:13px}.online-dot{width:13px;height:13px;box-shadow:0 0 0 6px rgba(42,220,175,.12)}.avatar{width:49px;height:49px;font-size:17px;border:1px solid rgba(255,255,255,.26);background:linear-gradient(145deg,#1e60ce,#173b84)}
main{padding:24px 23px 122px}.today-page{padding-top:16px}.hero-intro{display:grid;grid-template-columns:1fr auto;align-items:end;color:#fff;margin:0 0 25px;position:relative}.hero-intro span{color:#70b1ff;font-size:13px}.hero-intro h1{margin:7px 0 0;color:#fff;font-size:34px;line-height:1.05;letter-spacing:-.045em}.today-count{align-self:center;min-width:116px;padding:18px 17px;border-radius:27px;background:linear-gradient(145deg,rgba(24,94,202,.82),rgba(10,47,107,.9));border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.17),0 14px 34px rgba(0,0,0,.16);text-align:center}.today-count span{display:block;color:#fff;font-size:35px;font-weight:900;line-height:1}.today-count small{display:block;color:#dfeaff;font-size:13px;margin-top:7px}
.primary-job{padding:28px 27px 25px;border-radius:34px;background:linear-gradient(145deg,#07265c,#062157 54%,#0d3e8f);box-shadow:0 28px 55px rgba(3,25,64,.31);overflow:hidden}.primary-job:before{background:linear-gradient(100deg,rgba(255,255,255,.05),transparent 34%)}.primary-job:after{display:none}.map-motif{position:absolute;right:-15px;top:68px;width:245px;height:245px;opacity:.52;background:repeating-linear-gradient(45deg,transparent 0 31px,rgba(65,150,255,.18) 32px 35px),repeating-linear-gradient(-45deg,transparent 0 42px,rgba(65,150,255,.12) 43px 46px);mask-image:radial-gradient(circle at center,#000,transparent 69%)}.map-motif span{position:absolute;left:115px;top:110px;width:37px;height:37px;border:8px solid white;border-radius:50%;box-shadow:0 0 0 10px rgba(24,118,255,.34),0 0 32px #21a7ff;background:#0d4fad}.pill-label{display:inline-flex;background:rgba(21,128,255,.24);padding:10px 17px;border-radius:999px;color:#39b8ff!important;font-size:11px!important}.status{display:flex;align-items:center;gap:8px;padding:10px 17px;border:1px solid rgba(255,255,255,.22);background:rgba(3,25,67,.42);font-size:11px}.status i{width:10px;height:10px;border-radius:50%;background:#2080ff;box-shadow:0 0 0 5px rgba(32,128,255,.15)}.time-chip{margin-top:15px;padding:0;background:transparent;border:0}.time-chip svg{width:31px;height:31px;padding:7px;border-radius:50%;background:rgba(34,124,255,.18)}.time-chip strong{font-size:28px}.customer-row{margin-top:28px;gap:20px}.customer-avatar{width:72px;height:72px;border-radius:23px;font-size:23px;background:linear-gradient(145deg,#165cc4,#123a83)}.customer-row h2{font-size:34px}.customer-row span{font-size:15px;color:#d0ddf3}.problem{font-size:23px;margin:26px 0 24px}.job-facts{padding:0;border-radius:25px;background:rgba(255,255,255,.095);overflow:hidden;gap:0}.job-facts div{display:grid;grid-template-columns:28px 1fr 20px;gap:14px;align-items:center;padding:18px 21px;font-size:15px;border-bottom:1px solid rgba(255,255,255,.12)}.job-facts div:last-child{border-bottom:0}.job-facts div>svg:last-child{opacity:.8}.primary-actions{grid-template-columns:105px 105px 1fr;gap:16px;margin-top:25px}.icon-action{height:100px;border-radius:24px;justify-content:center;background:rgba(2,21,58,.48);border:1px solid rgba(255,255,255,.16)}.icon-action span svg{width:36px;height:36px}.icon-action small{font-size:12px;margin-top:4px}.main-action{height:100px;border-radius:25px;background:linear-gradient(120deg,#1d62ef,#22b2ff);color:#fff;font-size:20px;box-shadow:0 15px 35px rgba(10,104,255,.32)}.main-action svg{width:29px;height:29px}
.day-section{margin-top:42px}.section-head .overline{color:#526a88;font-size:12px}.section-head h2{font-size:25px}.route-count{color:#0c63e8;font-size:15px}.route-list{border:0;box-shadow:none;background:transparent;overflow:visible}.route-item{grid-template-columns:31px 98px 1fr 53px 20px;padding:23px 8px;background:transparent;border-bottom:0}.route-line{height:100%;position:relative}.route-line span{width:20px;height:20px;background:#1f75f2;border:5px solid #e8f2ff;box-shadow:0 0 0 2px #1f75f2}.route-line i{position:absolute;left:9px;top:27px;width:2px;height:calc(100% + 20px);background:#a5b4c8}.route-time{color:#0a55c4;font-size:16px;font-weight:900;text-align:center;line-height:1.55;border-right:1px solid #d9e2ee;padding-right:14px}.route-copy{padding-left:14px}.route-copy strong{font-size:20px}.route-copy span{font-size:15px;margin-top:5px}.route-copy small{display:flex;align-items:center;gap:6px;font-size:13px;margin-top:8px}.route-copy small svg{width:17px;height:17px}.route-calendar{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#edf5ff;color:#176fe8}.route-calendar svg{width:22px;height:22px}.route-item>svg{width:20px}
.module-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:36px;background:#fff;border-radius:27px;border:1px solid var(--stroke);box-shadow:0 16px 36px rgba(6,26,61,.09);overflow:hidden}.module-strip button{border:0;background:#fff;padding:25px 6px;color:#0b4ca7;display:grid;place-items:center;gap:8px;font-weight:850;border-right:1px solid var(--stroke)}.module-strip button:last-child{border-right:0}.module-strip svg{width:29px;height:29px}.module-strip span{font-size:12px}
.bottom-nav{grid-template-columns:repeat(4,1fr);height:92px;background:#061a3d;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -14px 35px rgba(2,14,38,.2)}.bottom-nav button{color:#8797ae;font-size:10px}.bottom-nav button svg{width:27px;height:27px}.bottom-nav button.active{color:#20a0ff;background:transparent;border-top:3px solid #1d82ff;border-radius:0}.bottom-nav button.active svg{filter:drop-shadow(0 0 8px rgba(32,160,255,.4))}
.profile-hero{background:linear-gradient(145deg,#08265d,#0d438f);color:#fff;border-radius:28px;padding:35px 20px;text-align:center;box-shadow:var(--shadow)}.profile-avatar{width:88px;height:88px;border-radius:30px;display:grid;place-items:center;margin:0 auto 15px;background:linear-gradient(145deg,#1d75f1,#21b4ff);font-size:28px;font-weight:900}.profile-hero h2{margin:0;font-size:26px}.profile-hero p{margin:7px 0 15px;color:#d6e5f9}.profile-online{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.13)}.profile-online i{width:8px;height:8px;border-radius:50%;background:#2adcae}.profile-actions{margin-top:17px;background:#fff;border:1px solid var(--stroke);border-radius:22px;overflow:hidden}.profile-actions button{width:100%;border:0;background:#fff;display:grid;grid-template-columns:28px 1fr 20px;gap:10px;align-items:center;padding:18px;text-align:left;border-bottom:1px solid var(--stroke);font-weight:800}.profile-actions button:last-child{border-bottom:0}.profile-actions svg{width:21px;height:21px}
@media(max-width:430px){.mobile-shell{background:linear-gradient(180deg,#061a3d 0 245px,#f7f9fd 245px 100%)}.app-header{height:66px;padding:10px 16px}.brand>svg{width:40px;height:40px}.brand strong{font-size:17px}.brand small{font-size:8px}.avatar{width:38px;height:38px}.online-dot{width:10px;height:10px}.today-page{padding-top:10px}.hero-intro{margin-bottom:14px}.hero-intro span{font-size:10px}.hero-intro h1{font-size:26px}.today-count{min-width:78px;padding:11px;border-radius:19px}.today-count span{font-size:25px}.today-count small{font-size:9px}.primary-job{padding:20px;border-radius:27px}.pill-label{padding:7px 11px;font-size:8px!important}.status{padding:7px 10px;font-size:8px}.time-chip strong{font-size:21px}.customer-row{margin-top:18px;gap:12px}.customer-avatar{width:49px;height:49px;border-radius:16px;font-size:15px}.customer-row h2{font-size:25px}.customer-row span{font-size:9px}.problem{font-size:16px;margin:17px 0}.job-facts div{padding:13px 14px;font-size:11px;grid-template-columns:21px 1fr 16px}.primary-actions{grid-template-columns:53px 53px 1fr;gap:9px;margin-top:15px}.icon-action,.main-action{height:58px;border-radius:17px}.icon-action span svg{width:22px;height:22px}.icon-action small{font-size:7px}.main-action{font-size:11px}.day-section{margin-top:26px}.section-head h2{font-size:19px}.route-item{grid-template-columns:18px 65px 1fr 38px 15px;padding:16px 0}.route-line span{width:14px;height:14px;border-width:3px}.route-line i{left:6px;top:20px}.route-time{font-size:10px;padding-right:8px}.route-copy{padding-left:8px}.route-copy strong{font-size:14px}.route-copy span{font-size:10px}.route-copy small{font-size:8px}.route-calendar{width:34px;height:34px;border-radius:11px}.route-calendar svg{width:17px;height:17px}.module-strip{margin-top:22px;border-radius:20px}.module-strip button{padding:17px 2px}.module-strip svg{width:22px;height:22px}.module-strip span{font-size:8px}.bottom-nav{height:72px}.bottom-nav button{font-size:8px}.bottom-nav button svg{width:21px;height:21px}}
