html,body{min-height:100%}body.onsite-mobile-app{margin:0;background:radial-gradient(circle at top left,rgba(11,77,138,0.12),transparent 34%),linear-gradient(180deg,#f6f9fc 0%,#ecf2f8 100%);color:#17202a}.onsite-mobile-shell{min-height:100vh;padding:0.6rem}.onsite-mobile-card{width:min(100%,760px);margin:0 auto;background:rgba(255,255,255,0.98);border:1px solid rgba(16,24,40,0.08);border-radius:22px;box-shadow:0 20px 56px rgba(15,23,42,0.12);padding:0.95rem}.onsite-mobile-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0.8rem;align-items:flex-start;margin-bottom:0.8rem}.onsite-mobile-kicker{color:#0b4d8a;font-size:0.76rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}.onsite-mobile-title{margin:0.1rem 0 0;font-size:1.45rem;line-height:1.05;word-break:break-word}.onsite-mobile-header-actions{display:flex;gap:0.45rem;align-items:center;flex-wrap:wrap;justify-content:flex-end;min-width:0}.onsite-mobile-chip{display:inline-flex;align-items:center;min-height:30px;padding:0.25rem 0.6rem;border-radius:999px;background:#eef4fb;font-size:0.84rem;font-weight:700;color:#0b4d8a;max-width:12.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.onsite-mobile-chip-link{text-decoration:none}.onsite-mobile-copy{margin-bottom:0.7rem;color:#52606d;font-size:0.88rem;line-height:1.4}.onsite-mobile-stack{display:grid;gap:0.65rem}.onsite-mobile-choice,.onsite-job-card,.onsite-summary-card,.onsite-quote-card,.onsite-line-card,.onsite-section,.onsite-details,.onsite-qr-panel{border:1px solid rgba(16,24,40,0.08);border-radius:18px;background:#fff}.onsite-mobile-choice,.onsite-job-card,.onsite-part-btn,.onsite-template-btn{width:100%;text-align:left}.onsite-mobile-choice,.onsite-job-card{display:block;padding:0.85rem;color:inherit;text-decoration:none}.onsite-job-card-top,.onsite-status-row,.onsite-totals,.onsite-stepper-row{display:flex;justify-content:space-between;gap:0.55rem;align-items:center;flex-wrap:wrap}.onsite-job-num{font-weight:800;font-size:0.96rem}.onsite-status-pill{display:inline-flex;align-items:center;min-height:28px;padding:0.2rem 0.55rem;border-radius:999px;background:#18212b;color:#fff;font-size:0.76rem;font-weight:700;text-transform:capitalize}.onsite-job-customer,.onsite-quote-title,.onsite-line-title{margin-top:0.35rem;font-size:1rem;font-weight:700}.onsite-job-meta,.onsite-inline-meta{display:flex;gap:0.45rem;flex-wrap:wrap;color:#5b6773;font-size:0.84rem}.onsite-summary-card,.onsite-section{padding:0.85rem}.onsite-section-title{margin-bottom:0.55rem;font-size:0.95rem;font-weight:800}.onsite-details{overflow:hidden}.onsite-details>summary{list-style:none;cursor:pointer;padding:0.8rem 0.9rem;font-weight:800}.onsite-details>summary::-webkit-details-marker{display:none}.onsite-details-body{padding:0 0.9rem 0.9rem}.onsite-mobile-search{min-height:44px;border-radius:14px}.onsite-quote-actions{margin:0.75rem 0}.onsite-primary-action{width:100%;min-height:46px;border-radius:14px;font-weight:700}.onsite-mobile-form .form-control,.onsite-mobile-form textarea{border-radius:14px}.onsite-mobile-empty{padding:0.9rem;border-radius:16px;background:#f7fafc;color:#65717d;font-size:0.88rem}.onsite-mobile-alert{border-radius:16px}.onsite-line-card{padding:0.75rem}.onsite-stepper-row{margin-top:0.55rem}.onsite-qr-panel{display:flex;align-items:center;justify-content:center;min-height:244px;padding:0.75rem;background:linear-gradient(180deg,#fcfdff 0%,#f4f8fc 100%);margin-bottom:0.65rem}@media (max-width:640px){.onsite-mobile-card{padding:0.75rem;border-radius:18px}.onsite-mobile-title{font-size:1.25rem}}