/* App screens share the web's forms and permission checks; layout is designed for touch. */
html.mobile-app{color-scheme:dark;overscroll-behavior-y:none;-webkit-text-size-adjust:100%}
.mobile-app body{margin:0;min-width:0;overflow-x:hidden;background:#0c100e}
.mobile-app .sidebar,.mobile-app main>header,.mobile-app .site-nav,.mobile-app footer{display:none!important}
.mobile-app main,.mobile-app .site-main{margin:0!important;width:100%!important;min-width:0;padding:0!important}
.mobile-app .main-content{padding:18px 16px 28px!important;max-width:900px;margin:0 auto}
.mobile-app .page-heading{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px}
.mobile-app .page-heading h1{font-size:28px;letter-spacing:-.8px;line-height:1.2}
.mobile-app .page-heading p{font-size:14px;line-height:1.65;max-width:100%}
.mobile-app .page-heading .eyebrow{display:none}
.mobile-app button,.mobile-app a.primary,.mobile-app a.secondary{min-height:46px;touch-action:manipulation;border-radius:12px}
.mobile-app button:disabled{opacity:.5}
.mobile-app button,.mobile-app input,.mobile-app select,.mobile-app textarea{font-family:inherit}
.mobile-app input:not([type=checkbox]):not([type=radio]),.mobile-app select,.mobile-app textarea{font-size:16px!important;min-height:48px;max-width:100%;border-radius:12px}
.mobile-app input[type=checkbox],.mobile-app input[type=radio]{width:21px;height:21px;flex-shrink:0}
.mobile-app label{font-size:13px;line-height:1.65;min-width:0}
.mobile-app .panel,.mobile-app .decision-card,.mobile-app .info-line,.mobile-app .application{border-radius:17px;overflow-wrap:anywhere}
.mobile-app .panel,.mobile-app .decision-card{padding:18px}
.mobile-app .two-col,.mobile-app .operations-two-col,.mobile-app .vehicle-grid,.mobile-app .stats-grid,.mobile-app .business-profile-hero,.mobile-app .user-editor-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px}
.mobile-app .filters,.mobile-app .management-toolbar,.mobile-app .management-heading{display:flex;flex-direction:column;align-items:stretch;gap:14px}
.mobile-app .filters>*{width:100%;min-width:0}
.mobile-app .management-tabs,.mobile-app .business-profile-tabs,.mobile-app .management-filters{display:flex;overflow-x:auto;flex-wrap:nowrap;gap:8px;padding:8px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.mobile-app .management-tabs button,.mobile-app .business-profile-tabs button,.mobile-app .management-filters button{flex:0 0 auto;white-space:nowrap;min-width:100px;padding:12px 15px;font-size:13px}
.mobile-app .partner-section-nav,.mobile-app .member-section-nav,.mobile-app .quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mobile-app .partner-section-nav button,.mobile-app .member-section-nav button,.mobile-app .quick-actions button{padding:15px 12px;min-width:0;text-align:left}
.mobile-app .partner-section-nav span,.mobile-app .member-section-nav span{font-size:11px}
.mobile-app .decision-actions,.mobile-app .section-title,.mobile-app .vehicle-info,.mobile-app .reminder-row,.mobile-app .admin-row,.mobile-app .user-list-row{flex-wrap:wrap;gap:12px}
.mobile-app .reminder-row .row-title{min-width:130px;flex:1}
.mobile-app .reminder-row .pill{font-size:11px}
.mobile-app table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.mobile-app th,.mobile-app td{padding:12px;min-width:100px;font-size:13px}
.mobile-app dl{overflow-wrap:anywhere}.mobile-app .detail-facts{grid-template-columns:1fr}.mobile-app dd{margin-left:0}
.mobile-app .standalone-business{padding:16px 16px 28px;max-width:900px;margin:auto}
.mobile-app .profile-cover{height:240px}.mobile-app .profile-contact{padding:20px}.mobile-app .profile-content{padding:18px}.mobile-app .business-profile-heading{display:block!important}.mobile-app .profile-badges{justify-content:flex-start;margin-top:14px}
.mobile-app .profile-discount{flex-direction:column}.mobile-app .profile-rates{flex-wrap:wrap}
.mobile-app .business-card{min-width:0}.mobile-app .directory-grid{grid-template-columns:minmax(0,1fr)}
.mobile-app .work-photo-grid{grid-template-columns:1fr}.mobile-app .work-photo-grid img,.mobile-app .work-photo-grid figure:only-child img{height:240px}
.mobile-app .qr-image svg{display:block;width:min(100%,300px);height:auto;margin:auto}.mobile-app .discount-code{font-size:16px;overflow-wrap:anywhere;letter-spacing:1px}
.mobile-app #modal{position:fixed;inset:auto 0 0;width:100%;max-width:700px;margin:0 auto;max-height:94dvh;border-radius:24px 24px 0 0;padding:22px 18px 28px;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain}
.mobile-app #modal::backdrop{background:rgba(0,0,0,.7)}.mobile-app .modal-heading{position:sticky;top:-22px;background:#151e17;z-index:2;padding:12px 0}.mobile-app .modal-heading h2{font-size:20px}.mobile-app #close-modal{flex-shrink:0;font-size:26px}
.mobile-app #modal form{display:grid;gap:13px}.mobile-app #modal-content{min-width:0}.mobile-app #modal .two-col{grid-template-columns:1fr!important}
.mobile-app .verification-documents img{max-height:60dvh;object-fit:contain}.mobile-app .verification-documents img.mobile-document-zoom{max-height:none;width:100%}
.mobile-app #toast{position:fixed;bottom:14px;left:16px;right:16px;max-width:600px;margin:auto;z-index:10000;transform:none;font-size:14px;line-height:1.6}
.mobile-app .site-hero{display:block;padding:30px 20px 20px}.mobile-app .site-hero h1{font-size:43px}.mobile-app .site-hero-visual{display:none}.mobile-app .site-lead{font-size:16px}.mobile-app .site-section{padding:28px 18px}.mobile-app .site-section h2{font-size:28px}.mobile-app .site-section-heading{display:block}.mobile-app .site-benefits,.mobile-app .site-how,.mobile-app .site-partners{display:block}.mobile-app .site-benefits article{margin-bottom:14px}.mobile-app .site-how ol{padding:0;margin-top:26px}.mobile-app .site-strip{overflow:auto;gap:20px;padding:20px;font-size:11px}.mobile-app .site-strip span{white-space:nowrap}
.mobile-app .conversation-messages{max-height:45dvh}.mobile-app .message-bubble{margin-right:15px}.mobile-app .message-bubble.mine{margin-left:15px;margin-right:0}
.mobile-app .info-line{font-size:13px;line-height:1.7}.mobile-app .form-error{font-size:14px}.mobile-app img{max-width:100%}
@media(min-width:700px){.mobile-app .two-col,.mobile-app .operations-two-col,.mobile-app .vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mobile-app #modal{border-radius:24px;inset:30px 0 auto;max-height:90dvh}.mobile-app .main-content{padding:28px!important}}
.mobile-app .form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.mobile-app .dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:20px}
.mobile-app .management-counts{display:flex;gap:10px}.mobile-app .management-counts>span{flex:1;padding:12px}
.mobile-app .hero{min-height:260px}.mobile-app .hero-copy{padding:22px}.mobile-app .hero h2{font-size:28px}.mobile-app .hero p{font-size:13px;line-height:1.7}.mobile-app .hero-art{opacity:.25}
.mobile-app .stats{gap:10px}.mobile-app .stats small{font-size:10px}.mobile-app .stats em{font-size:9px}.mobile-app .stats .plan-stat{font-size:15px}
.mobile-app .business-grid,.mobile-app .pricing-grid,.mobile-app .site-business-grid,.mobile-app .public-offers{grid-template-columns:minmax(0,1fr)!important}
@media(min-width:700px){.mobile-app .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-app .business-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.mobile-app #modal form label{margin:0}.mobile-app #modal form input:not([type=checkbox]):not([type=radio]),.mobile-app #modal form select,.mobile-app #modal form textarea{margin-top:7px}.mobile-app #modal .form-grid{gap:14px}.mobile-app #modal form{gap:16px}

/* Touch layout refinements aligned with the native navigation. */
.mobile-app body{background:#0c1210}.mobile-app .main-content{padding:24px 18px 32px!important}.mobile-app .page-heading h1{font-size:29px}.mobile-app .page-heading p:last-child{font-size:14px}.mobile-app .page-heading .primary{align-self:flex-start;min-height:44px}.mobile-app .quick-actions button{min-height:136px;padding:17px;display:grid;grid-template-columns:1fr;gap:7px}.mobile-app .quick-actions .quick-icon{grid-row:auto}.mobile-app .quick-actions strong{font-size:15px}.mobile-app .quick-actions button>span:last-child{font-size:12px}.mobile-app .management-tabs,.mobile-app .business-profile-tabs{padding:7px;background:#101813;border-radius:15px;border:1px solid #304033;gap:5px}.mobile-app .management-tabs button,.mobile-app .business-profile-tabs button{min-height:44px;padding:11px 14px}.mobile-app .management-filters{gap:7px}.mobile-app .filters{gap:14px}.mobile-app .partner-section-nav button,.mobile-app .member-section-nav button{padding:17px;min-height:90px}.mobile-app .partner-section-nav strong,.mobile-app .member-section-nav strong{font-size:14px}.mobile-app .panel,.mobile-app .decision-card{padding:20px}.mobile-app #modal .modal-heading{background:#151e18}.mobile-app #modal{border-color:#394b3c;box-shadow:0 -15px 65px #0005}.mobile-app #modal::before{content:'';display:block;width:38px;height:4px;background:#556a58;border-radius:5px;margin:0 auto 16px}.mobile-app #toast{bottom:16px}.mobile-app .site-cta{flex-wrap:wrap}.mobile-app .site-cta>*{flex:1 1 100%;text-align:center}
.mobile-app .partner-section-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:7px;padding:7px}.mobile-app .partner-section-nav button{flex:0 0 auto;min-width:auto;min-height:44px;padding:11px 14px;white-space:nowrap}

.mobile-app .partner-section-nav{display:block!important}.mobile-app .partner-workspaces{display:grid;grid-template-columns:1fr 1fr}.mobile-app .partner-workspaces button{white-space:normal;min-height:48px;font-size:12px}.mobile-app .partner-subtabs button{min-height:42px;flex:0 0 auto;padding:10px 12px}.mobile-app .transfer-report table{display:table}
/* Shared message screens keep native photo picking and compact controls. */
.mobile-app #modal.chat-dialog{width:100%;max-width:100%;padding:18px 16px max(18px,env(safe-area-inset-bottom));inset:auto 0 0;margin:auto 0 0;border-radius:23px 23px 0 0;max-height:98dvh}.mobile-app #modal.chat-dialog::before{display:none}.mobile-app #modal.chat-dialog .modal-heading{position:static;background:transparent;padding:0 0 12px;margin:0}.mobile-app #modal.chat-dialog .chat-composer{display:block;gap:0}.mobile-app #modal.chat-dialog .chat-attach{display:flex;margin:0;padding:11px 12px}.mobile-app #modal.chat-dialog .chat-attach input{margin:0;position:absolute;inset:0}.mobile-app #modal.chat-dialog .conversation-messages{height:36dvh;min-height:150px}.mobile-app .management-groups{grid-template-columns:1fr 1fr}.mobile-app .management-groups button{min-height:74px;padding:13px}.mobile-app .report-review-grid{grid-template-columns:1fr}.mobile-app .thread-grid{grid-template-columns:1fr}
