/* JLJAM 7.19 home and touch UX: only applies to the live app, not auth/portal pages. */
#app .ng-lanes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:15px 0 19px;max-width:100%;}
#app .ng-lane{display:flex;align-items:center;gap:10px;min-height:67px;padding:12px;border-radius:18px;border:1px solid rgba(185,151,255,.32);background:linear-gradient(145deg,rgba(112,73,173,.24),rgba(33,52,96,.31));box-shadow:inset 0 1px rgba(255,255,255,.12),0 8px 22px rgba(14,9,45,.18);color:inherit;text-align:left;cursor:pointer;touch-action:manipulation;transition:transform .18s,border-color .18s;}
#app .ng-lane:hover{border-color:rgba(208,172,255,.7);transform:translateY(-2px)}
#app .ng-lane:focus-visible,#app .ng-gallery-controls button:focus-visible{outline:3px solid #d5a8ff;outline-offset:2px}
#app .ng-lane-icon{font-size:23px;line-height:1;color:#d4b5ff;flex:0 0 auto}
#app .ng-lane strong{font:750 13px/1.3 ui-sans-serif,system-ui;min-width:0}
#app .ng-lane-arrow{margin-left:auto;opacity:.72}
#app .ng-gallery-controls{display:flex;align-items:center;gap:6px;margin-left:auto}
#app .ng-gallery-controls .ng-circle{display:grid;place-items:center;min-width:42px;min-height:42px;border-radius:13px;border:1px solid rgba(185,151,255,.4);background:rgba(102,72,169,.25);color:inherit;font-size:23px;cursor:pointer;touch-action:manipulation}
#app .ej-roster-strip{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x;}
#app .ej-roster-strip .ej-person{scroll-snap-align:start}
#app .ej-roster-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ng-preview-auth{font:500 12px/1.5 system-ui;color:#f4defe;background:#49326a70;border:1px solid #ac86df66;padding:13px;border-radius:12px;overflow-wrap:anywhere}
@media(max-width:850px){#app .ng-lanes{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){#app .ng-lanes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#app .ng-lane{min-height:65px;padding:10px}#app .ng-lane:last-child{grid-column:1/-1}#app .ej-roster-strip{scroll-padding-inline:10px}#app .ng-gallery-controls .ng-circle{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){#app .ng-lane{transition:none!important}#app .ng-lane:hover{transform:none}}
