/* NSM Mobile 0.7.1 – referenciahű, kompakt Field Service UI */
:root{--ink:#061a3d;--ink2:#0a2f6b;--electric:#1e78ff;--cyan:#2eb7ff;--canvas:#f4f7fb;--card:#fff;--stroke:#dfe7f1;--soft:#edf5ff;--text:#0b1e3d;--muted:#6b7c93}
html,body{background:#dce6f2}.mobile-shell{width:min(100%,390px);background:linear-gradient(180deg,#061a3d 0 228px,#f7f9fd 228px 100%);box-shadow:0 22px 70px rgba(5,24,58,.24);border-radius:0 0 28px 28px}.app-header{height:61px;padding:9px 9px;background:transparent;box-shadow:none}.brand{gap:8px}.brand>svg{width:36px;height:36px}.brand strong{font-size:15px}.brand small{font-size:7px;letter-spacing:.08em;color:#b8c9df}.header-side{gap:10px}.online-dot{width:8px;height:8px;box-shadow:0 0 0 4px rgba(42,220,175,.12)}.avatar{width:34px;height:34px;border-radius:50%;font-size:12px;background:linear-gradient(145deg,#1e60ce,#173b84)}
main{padding:15px 7px 92px}.today-page{padding-top:8px}.hero-intro{grid-template-columns:1fr auto;margin:0 0 14px;padding:0 0;color:#fff;align-items:center}.hero-intro span{font-size:9px;color:#70b1ff}.hero-intro h1{margin:4px 0 0;font-size:22px;line-height:1.05}.today-count{min-width:72px;padding:8px 9px;border-radius:16px;background:linear-gradient(145deg,rgba(24,94,202,.82),rgba(10,47,107,.9));border:1px solid rgba(255,255,255,.25)}.today-count span{font-size:22px}.today-count small{font-size:8px;margin-top:3px}.install-mini{display:none}
.primary-job{padding:13px 14px 14px;border-radius:17px;background:linear-gradient(145deg,#07265c,#062157 54%,#0d3e8f);box-shadow:0 14px 26px rgba(3,25,64,.28)}.map-motif{right:-30px;top:35px;width:180px;height:180px;opacity:.50}.map-motif span{left:88px;top:81px;width:24px;height:24px;border:5px solid white;box-shadow:0 0 0 7px rgba(24,118,255,.32),0 0 22px #21a7ff}.primary-head{align-items:center}.pill-label{padding:6px 10px;font-size:7px!important}.status{padding:6px 9px;font-size:7px;gap:5px}.status i{width:6px;height:6px;box-shadow:0 0 0 3px rgba(32,128,255,.15)}.time-chip{margin-top:9px}.time-chip svg{width:21px;height:21px;padding:4px}.time-chip strong{font-size:18px}.customer-row{margin-top:13px;gap:10px}.customer-avatar{width:43px;height:43px;border-radius:13px;font-size:13px}.customer-row h2{font-size:20px}.customer-row span{font-size:8px}.problem{font-size:13px;margin:11px 0 12px}.job-facts{border-radius:13px}.job-facts div{grid-template-columns:18px 1fr 13px;gap:8px;padding:9px 10px;font-size:9px}.job-facts svg{width:14px;height:14px}.primary-actions{grid-template-columns:50px 50px 1fr;gap:8px;margin-top:10px}.icon-action,.main-action{height:46px;border-radius:12px}.icon-action span svg{width:18px;height:18px}.icon-action small{font-size:6px;margin-top:-6px}.main-action{font-size:9px;box-shadow:0 8px 18px rgba(10,104,255,.28)}.main-action svg{width:15px;height:15px}
.day-section{margin-top:18px}.section-head{margin-bottom:8px}.section-head .overline{font-size:8px}.section-head h2{font-size:15px}.route-count{font-size:9px}.route-list{background:transparent}.route-item{grid-template-columns:14px 50px 1fr 28px 12px;gap:5px;padding:11px 2px}.route-line span{width:10px;height:10px;border-width:2px;box-shadow:0 0 0 2px #dceaff}.route-line i{left:5px;top:14px;width:1px;height:calc(100% + 12px)}.route-time{font-size:8px;padding-right:6px;line-height:1.35}.route-copy{padding-left:5px}.route-copy strong{font-size:11px}.route-copy span{font-size:8px;margin-top:2px;max-width:185px}.route-copy small{font-size:7px;margin-top:3px;gap:3px;max-width:185px}.route-copy small svg{width:10px;height:10px}.route-calendar{width:27px;height:27px;border-radius:8px}.route-calendar svg{width:13px;height:13px}.route-item>svg{width:12px;height:12px}
.module-strip{margin-top:14px;border-radius:14px}.module-strip button{padding:10px 2px;gap:4px}.module-strip svg{width:17px;height:17px}.module-strip span{font-size:7px}.bottom-nav{height:62px;background:#061a3d}.bottom-nav button{font-size:7px}.bottom-nav button svg{width:18px;height:18px}.bottom-nav button.active{border-top-width:2px}
.page-title h1{font-size:21px}.search-box input{height:42px}.filter-chip{padding:7px 11px}.list-card{padding:11px;border-radius:14px}.job-detail{padding-bottom:80px}
@media(min-width:431px){.mobile-shell{margin-top:0;min-height:100vh}}
