.userSettings{width:min(1100px,100%);margin:0 auto}.settingsIntro{display:flex;align-items:center;gap:14px;margin-bottom:18px}.settingsIntro>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#e9f4f8;color:#2c6884}.settingsIntro h2{margin:0;color:#173d50;font-size:1.45rem}.settingsIntro p{margin:3px 0 0;color:#6d7a81}.settingsSaved{margin-left:auto;padding:7px 11px;border-radius:999px;background:#e8f6ef;color:#267257;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.settingsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settingsCard{padding:20px;border:1px solid #dde6ea;border-radius:20px;background:#fff;box-shadow:0 10px 28px #123b5d0f}.settingsAccount{grid-column:1/-1}.settingsCardTitle{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.settingsCardTitle>svg{flex:0 0 auto;color:#2c6884}.settingsCardTitle h3{margin:0;color:#173d50}.settingsCardTitle p{margin:4px 0 0;color:#75838a;font-size:.9rem}.settingsSelect{display:grid;gap:7px;padding:0 0 16px;font-weight:800;color:#294d5d}.settingsSelect select{min-height:46px;padding:0 12px;border:1px solid #cfdde3;border-radius:12px;background:#fff;color:#173d50}.settingsToggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #edf1f3;cursor:pointer}.settingsToggle>span{display:flex;align-items:flex-start;gap:11px;min-width:0}.settingsToggle svg{flex:0 0 auto;color:#58839a}.settingsToggle b,.settingsToggle small{display:block}.settingsToggle b{color:#173d50}.settingsToggle small{margin-top:2px;color:#7b878d;font-size:.82rem;line-height:1.4}.settingsToggle input{width:22px;height:22px;accent-color:#2C6884}.settingsReset,.settingsSignOut{margin-top:8px}.settingsLink{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #edf1f3;color:inherit;text-decoration:none}.settingsLink>svg:first-child{color:#2c6884}.settingsLink>svg:last-child{width:16px;color:#9aa7ad}.settingsLink b,.settingsLink small{display:block}.settingsLink b{color:#173d50}.settingsLink small{margin-top:2px;color:#7b878d;font-size:.82rem}.userSettings.embedded{margin-top:20px}.selfMenuUtility{display:flex;align-items:center;min-height:42px;margin:2px 4px;padding:0 13px;border-radius:11px;color:#ffffffbd;font-size:.84rem;font-weight:750;text-decoration:none}.selfMenuUtility:hover,.selfMenuUtility:focus-visible{background:#ffffff17;color:#fff}.schoolAdminUtility{display:flex;align-items:center;gap:9px;width:100%;min-height:42px;padding:0 10px;border-radius:10px;color:inherit;text-decoration:none;font-weight:750}.schoolAdminUtility:hover,.schoolAdminUtility:focus-visible{background:#ffffff14}html[data-k2p-large-text=true]{font-size:112%}html[data-k2p-high-contrast=true] body{filter:contrast(1.08)}html[data-k2p-high-contrast=true] button,html[data-k2p-high-contrast=true] input,html[data-k2p-high-contrast=true] select,html[data-k2p-high-contrast=true] textarea{border-color:#78909a!important}html[data-k2p-reduced-motion=true] *,html[data-k2p-reduced-motion=true] *:before,html[data-k2p-reduced-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}@media(max-width:720px){.settingsGrid{grid-template-columns:1fr}.settingsAccount{grid-column:auto}.settingsCard{padding:17px;border-radius:17px}.settingsIntro{align-items:flex-start}.settingsSaved{margin-top:4px}.settingsToggle{align-items:flex-start}.settingsLink{padding:13px 0}}.vehiclePhotoManager{padding:18px 21px;min-width:0}.vehiclePhotoManager>p{line-height:1.55;overflow-wrap:anywhere}.vehiclePhotoManagerBar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:16px 0}.vehicleFilePicker{display:grid;gap:8px;max-width:100%;font-weight:700}.vehicleFilePicker input{min-height:44px;max-width:100%;width:100%;font-size:14px}.vehiclePhotoTiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.vehiclePhotoTile{min-width:0;border:1px solid #dbe4e1;border-radius:14px;overflow:hidden;padding:10px;background:#fff}.vehicleTilePreview{display:grid;place-items:center;border:0;background:#eef3f1;border-radius:8px;width:100%;height:130px;padding:4px;cursor:zoom-in}.vehicleTilePreview img{width:100%;height:100%;object-fit:contain;min-height:0}.vehicleMainBadge,.vehiclePhotoNumber{display:block;font-weight:800;font-size:12px;padding:9px 0}.vehicleMainBadge{color:#206254}.vehicleTileActions{display:flex;flex-wrap:wrap;gap:6px}.vehicleTileActions button{min-height:44px;flex:1}.vehiclePhotoManager button:disabled{opacity:.55;cursor:default}.vehiclePhotoManager button:focus-visible,.vehicleVisual button:focus-visible,.vehicleGalleryDialog button:focus-visible{outline:3px solid #2e7d6e;outline-offset:3px}.vehicleOpenGallery{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:150px;background:transparent;border:0;padding:0;cursor:zoom-in;color:inherit}.vehicleVisual .vehicleStage .vehicleOpenGallery img{display:block;max-width:100%;width:100%;height:185px;max-height:185px;object-fit:contain;filter:none;transform:none}.vehicleOpenHint{position:absolute;bottom:5px;right:5px;padding:7px 10px;border-radius:8px;background:#123b5de8;color:#fff;font-size:11px;font-weight:750}.vehicleVisual figcaption{overflow-wrap:anywhere}.vehicleVisual figcaption .secondary{margin-top:9px;min-height:44px}.vehicleImageStatus{display:grid;place-items:center;padding:12px;min-height:60px;width:100%;font-size:12px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.vehicleGalleryDialog{box-sizing:border-box;width:min(1100px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:18px;border:1px solid #dbe4e1;border-radius:18px;background:#fff;color:#18372f;overflow:auto;margin:auto;overscroll-behavior:contain}.vehicleGalleryDialog::backdrop{background:#0a181fd9}.vehicleGalleryContent{min-width:0}.vehicleGalleryHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.vehicleGalleryHeading h2{margin:0;font-size:20px}.vehicleGalleryHeading p{margin:5px 0 0;font-size:14px;overflow-wrap:anywhere}.vehicleGalleryDialog button{min-width:44px;min-height:44px;flex-shrink:0;cursor:pointer}.vehicleGalleryDialog button:disabled{opacity:.5;cursor:default}.vehicleZoomArea{height:min(55dvh,600px);min-height:180px;overflow:auto;background:#edf2f4;border-radius:12px;overscroll-behavior:contain}.vehicleZoomCanvas{display:flex;align-items:center;justify-content:center;min-width:0}.vehicleZoomCanvas img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:none;filter:none}.vehicleGalleryControls{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:14px 0}.vehicleGalleryControls p{margin:0 4px;font-weight:700;font-size:14px}.vehicleGalleryThumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:560px;margin:auto}.vehicleGalleryThumbnails button{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #dbe4e1;border-radius:10px;background:#fff;padding:5px;min-width:0;overflow:hidden}.vehicleGalleryThumbnails button[aria-pressed=true]{border-color:#2e7d6e;background:#f1fff9}.vehicleGalleryThumbnails img{width:100%;height:70px;object-fit:contain}.vehicleGalleryThumbnails span:not(.vehicleImageStatus){font-weight:800;font-size:11px}.vehicleGalleryNote{font-size:12px;text-align:center;color:#53645f;margin:12px 0 0;line-height:1.5}.pickupPresenceCard .vehicleVisual.compact{width:100%;min-width:0;margin:8px 0 0}.pickupPresenceCard .vehicleVisual.compact .vehicleStage{height:155px}.pickupPresenceCard .vehicleVisual.compact .vehicleStage img{height:150px;max-height:150px}@media(max-width:700px){.vehiclePhotoTiles{grid-template-columns:repeat(2,minmax(0,1fr))}.vehiclePhotoManager{padding:15px}.vehicleTilePreview{height:115px}.vehicleGalleryDialog{padding:12px}.vehicleGalleryHeading h2{font-size:18px}.vehicleGalleryThumbnails{gap:6px}.vehicleGalleryThumbnails img{height:55px}.vehicleGalleryControls{gap:6px}.vehicleGalleryControls .secondary{padding:10px}.vehicleOpenHint{font-size:10px}.vehicleGalleryHeading .secondary{padding:10px}}@media(max-width:360px){.vehiclePhotoTiles{gap:8px}.vehiclePhotoTile{padding:7px}.vehicleTileActions{flex-direction:column}.vehicleGalleryThumbnails img{height:45px}}.vehicleVisual .vehicleStage{height:185px;animation:none;transform:none;transform-style:flat}.vehicleVisual .vehicleStage img{animation:none;transform:none}.teacherClassroom{display:grid;gap:18px}.classroomHero{overflow:hidden;background:linear-gradient(145deg,#fff,#f6fbfd)}.classroomEyebrow{display:inline-flex;margin-bottom:6px;font-size:.72rem;font-weight:900;letter-spacing:.16em;color:#2c6884}.classroomProgress{display:flex;align-items:center;gap:18px;padding-top:14px;border-top:1px solid #e7eef1}.classroomProgressRing{--progress:0%;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;align-content:center;flex:0 0 auto;background:conic-gradient(#2C6884 var(--progress),#e7eef1 0);position:relative}.classroomProgressRing:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;background:#fff}.classroomProgressRing b,.classroomProgressRing small{position:relative;z-index:1}.classroomProgressRing b{font-size:1.45rem;color:#173d50}.classroomProgressRing small{font-size:.72rem;color:#78868c}.classroomProgress h4{margin:0;color:#173d50;font-size:1.08rem}.classroomProgress p{margin:5px 0 0;color:#66747b;line-height:1.45}.classroomImportGrid{display:grid;gap:14px}.classroomFile{position:relative;display:flex;align-items:center;gap:13px;padding:18px;border:1.5px dashed #b9d0da;border-radius:16px;background:#f7fbfd;color:#2c6884;cursor:pointer}.classroomFile:hover{border-color:#73aeca;background:#f1f9fc}.classroomFile input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.classroomFile b,.classroomFile small{display:block}.classroomFile b{color:#173d50}.classroomFile small{margin-top:3px;color:#75838a;font-size:.8rem}.classroomPaste{display:grid;gap:8px;font-weight:800;color:#284b5a}.classroomPaste textarea{width:100%;resize:vertical;min-height:150px;padding:14px;border:1px solid #cfdee4;border-radius:14px;font:inherit;line-height:1.5;background:#fff}.classroomPreview{display:flex;flex-direction:column;gap:3px;margin-top:12px;padding:12px 14px;border-radius:12px;background:#eef8f2;color:#285c47}.classroomPreview small{color:#5d7469}.classroomImportButton{margin-top:14px}.classroomRows{display:grid;gap:9px}.classroomRow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid #e2e9ec;border-radius:14px;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.classroomRow:hover{transform:translateY(-1px);box-shadow:0 7px 18px #183a4c0f}.classroomRow.notConnected{background:#f7f8f9;border-color:#e1e5e7}.classroomRow.connected{background:#f1faf5;border-color:#c9e8d5}.classroomStateIcon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px}.classroomRow.notConnected .classroomStateIcon{background:#eceff1;color:#8b989e}.classroomRow.connected .classroomStateIcon{background:#dcf3e6;color:#24835e}.classroomRow b{display:block;color:#173d50}.classroomRow small{display:block;margin-top:3px;color:#748086;line-height:1.35}.classroomStatus{white-space:nowrap;padding:7px 10px;border-radius:999px;font-size:.73rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.classroomStatus.pending{background:#eceff1;color:#68767c}.classroomStatus.connected{background:#dcf3e6;color:#247454}.classroomConfirmations{overflow:hidden}.classroomConfirmations .rosterSummary{margin-bottom:14px}@media(max-width:680px){.classroomProgress{align-items:flex-start}.classroomProgressRing{width:76px;height:76px}.classroomRow{grid-template-columns:auto minmax(0,1fr);align-items:flex-start}.classroomStatus{grid-column:2;justify-self:start}.classroomHero .panelHead,.classroomList .panelHead,.classroomImport .panelHead{align-items:flex-start}.classroomHero .panelHead .secondary{flex:0 0 auto}.classroomFile{padding:16px}.classroomRow{padding:12px}.classroomRow small{overflow-wrap:anywhere;word-break:normal}}@media(max-width:420px){.classroomProgress{flex-direction:column}.classroomProgressRing{width:70px;height:70px}.classroomRow{grid-template-columns:34px minmax(0,1fr);gap:10px}.classroomStateIcon{width:34px;height:34px;border-radius:10px}.classroomStatus{grid-column:2}.classroomFile{align-items:flex-start}.classroomFile svg{margin-top:2px}}.activityLog{min-width:0;max-width:100%;padding:clamp(16px,3vw,30px)}.activityLog .activityHeader{height:auto;padding:0;background:transparent;border:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.activityLog .activityHeader h2{margin:6px 0 8px;font-size:clamp(1.5rem,3vw,2rem)}.activityLog .activityHeader p{margin:0;line-height:1.6}.activityLog .activityEyebrow{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700;letter-spacing:.025em;color:var(--accent,#0f766e)}.activityLog .activityActions,.activityLog .activityPeriods{display:flex;gap:8px;flex-wrap:wrap}.activityLog button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;white-space:normal}.activityLog button:disabled{opacity:.5;cursor:not-allowed}.activityLog .activityFilters{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line,#dce4e3);border-bottom:1px solid var(--line,#dce4e3)}.activityLog .activityPeriods button[aria-pressed=true]{background:var(--accent,#0f766e);border-color:var(--accent,#0f766e);color:#fff}.activityLog .activityField{display:flex;flex-direction:column;gap:6px;min-width:160px;max-width:100%;font-size:.85rem;font-weight:600}.activityLog select,.activityLog input,.activityLog textarea{box-sizing:border-box;width:100%;min-height:42px;max-width:100%;padding:9px 12px;border:1px solid var(--line,#ccd7d5);border-radius:8px;font:inherit;color:inherit;background:var(--surface,#fff)}.activityLog textarea{font-weight:400;line-height:1.5;resize:vertical}.activityLog .activityCustomDates{display:flex;gap:12px;flex-wrap:wrap;max-width:100%}.activityLog .activitySummary{display:flex;align-items:flex-start;gap:12px;margin:22px 0 10px;padding:16px;border:1px solid var(--line,#dce4e3);border-radius:12px;background:var(--surface,#fff)}.activityLog .activitySummary svg{flex:none;margin-top:2px;color:var(--accent,#0f766e)}.activityLog .activitySummary p{margin:6px 0 0;line-height:1.6}.activityLog .activityContext,.activityLog .activityPrivacy{font-size:.8rem;line-height:1.6;opacity:.8;overflow-wrap:anywhere}.activityLog .activityError,.activityLog .activityLimit{padding:14px;border:1px solid #bd756a;border-radius:10px;line-height:1.6}.activityLog .activityStatus:empty{display:none}.activityLog .activityStatus{font-size:.85rem;line-height:1.6}.activityLog .activityTimeline ol{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:14px}.activityLog .activityEvent{padding:18px;border:1px solid var(--line,#dce4e3);border-left:4px solid var(--accent,#0f766e);border-radius:12px;min-width:0;overflow-wrap:anywhere;background:var(--surface,#fff)}.activityLog .activityEvent-pickup_exception{border-left-color:#b45309}.activityLog .activityEvent-pickup_cancelled{border-left-color:#64748b}.activityLog .activityEventHead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;font-size:.85rem;line-height:1.5}.activityLog .activityEvent time{opacity:.8;font-size:.8rem}.activityLog .activityEvent h3{font-size:1rem;margin:12px 0 3px}.activityLog .activityEvent p{margin:5px 0 0;font-size:.85rem;line-height:1.6}.activityLog .activitySchool{opacity:.75}.activityLog .activityException{font-weight:600}.activityLog .activityEmpty{padding:26px 0;text-align:center;line-height:1.6}@media(max-width:600px){.activityLog .activityActions{width:100%}.activityLog .activityActions button{flex:1 1 105px}.activityLog .activityFilters{align-items:stretch}.activityLog .activityPeriods{width:100%}.activityLog .activityPeriods button{flex:1 1 90px}.activityLog .activityField{flex:1 1 140px;min-width:0}.activityLog .activityCustomDates{width:100%}.activityLog .activityEvent{padding:14px}.activityLog .activityEventHead{flex-direction:column;gap:4px}}@media print{body:has(.activityLog){background:#fff!important;color:#000!important}body:has(.activityLog) .selfPortal>:not(main),body:has(.activityLog) .selfPortalMain>:not(.activityLog),.activityLog .activityControls,.activityLog .activityStatus{display:none!important}body:has(.activityLog) .selfPortal,body:has(.activityLog) .selfPortalMain{display:block!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;overflow:visible!important;height:auto!important}.activityLog{display:block!important;border:0!important;box-shadow:none!important;padding:0!important;background:#fff!important;color:#000!important}.activityLog .activityTimeline ol{display:block}.activityLog .activityEvent{break-inside:avoid;margin-bottom:12px;background:#fff!important;box-shadow:none!important}.activityLog .activityHeader{margin-bottom:16px}.activityLog .activitySummary{background:#fff!important}.activityLog .activityPrivacy{font-size:9pt}}.scannerDesk{max-width:1480px;margin:0 auto;padding:24px clamp(16px,3vw,38px) 48px;display:grid;gap:22px;color:#162033}.scannerTopbar,.scannerLogHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.scannerTopbar h1,.scannerLogHeader h2{margin:3px 0 4px;font-size:clamp(1.65rem,2.6vw,2.35rem);line-height:1.05}.scannerTopbar p,.scannerLogHeader p{margin:0;color:#667085}.scannerEyebrow{display:flex!important;align-items:center;gap:7px!important;margin:0!important;font-size:.77rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#44546f!important}.scannerCounters{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:8px;min-width:min(360px,100%)}.scannerCounters>div{background:#fff;border:1px solid #d9e0ea;border-radius:14px;padding:12px 15px;display:grid;gap:2px;text-align:center;box-shadow:0 4px 12px #1018280d}.scannerCounters b{font-size:1.4rem}.scannerCounters span{font-size:.78rem;color:#667085;font-weight:700}.scannerCounterPending{border-color:#f3b2b8!important;background:#fff8f8!important}.scannerCounterPending b{color:#b42318}.scannerCounterComplete{border-color:#a9dfc1!important;background:#f5fff9!important}.scannerCounterComplete b{color:#067647}.scannerWorkspace{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.55fr);gap:20px;align-items:start}.scannerStation,.scannerCurrent,.scannerLog{background:#fff;border:1px solid #d9e0ea;border-radius:20px;box-shadow:0 8px 28px #10182814}.scannerStation{padding:22px;position:sticky;top:18px}.scannerStationTitle{display:flex;gap:12px;align-items:center;margin-bottom:18px}.scannerStationTitle>svg{flex:none;background:#172554;color:#fff;padding:10px;width:48px;height:48px;border-radius:14px}.scannerStationTitle h2{margin:0 0 3px;font-size:1.25rem}.scannerStationTitle p{margin:0;color:#667085;font-size:.9rem}.scannerStation>.secondary{width:100%;min-height:54px;font-size:1rem;justify-content:center}.scannerStation .search{margin-top:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;background:#f8fafc;border:2px solid #b8c2d3;border-radius:14px;padding:7px 7px 7px 12px}.scannerStation .search:focus-within{border-color:#2447a8;box-shadow:0 0 0 3px #2447a81f}.scannerStation .search input{min-width:0;border:0!important;box-shadow:none!important;background:transparent!important;padding:11px 4px!important;font-size:1rem}.scannerStation .search button{min-height:44px;padding-inline:18px}.scannerStation .cameraBox{margin-bottom:12px}.scannerNotice,.scannerError{margin:14px 0 0;padding:11px 13px;border-radius:12px;font-size:.9rem;font-weight:650}.scannerNotice{background:#eef8f2;color:#05603a;border:1px solid #b8dfca}.scannerError{background:#fff3f3;color:#a11616;border:1px solid #efb1b1}.scannerCurrent{min-height:360px;padding:22px;overflow:hidden}.scannerCurrent.empty{display:grid;place-items:center}.scannerEmptyCurrent{text-align:center;max-width:470px;color:#667085}.scannerEmptyCurrent svg{color:#7887a1}.scannerEmptyCurrent h2{margin:12px 0 6px;color:#243047}.scannerEmptyCurrent p{margin:0}.scannerCurrentBanner{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6eaf0;padding-bottom:15px;margin-bottom:18px;color:#667085;font-size:.85rem}.scannerStatusPill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.scannerStatusPill.pending{background:#fee4e2;color:#b42318}.scannerStatusPill.released{background:#fff0c2;color:#7a4c00}.scannerStatusPill.complete{background:#dff7e8;color:#067647}.scannerIdentityGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.scannerPersonCard{min-width:0;border:1px solid #dde3ec;border-radius:16px;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fbfcfe}.scannerPersonCard .identityPhoto{display:block;margin:10px auto 8px;flex:none}.scannerPersonCard h2{font-size:1.08rem;margin:2px 0;max-width:100%;overflow-wrap:anywhere}.scannerPersonCard p{margin:0;color:#667085;font-size:.87rem}.scannerCardLabel{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:#667085}.scannerAdultIdentity{border:2px solid #4969bd;background:#f7f9ff}.scannerAdultIdentity .identityPhoto{align-self:center}.scannerMatchCallout{margin-top:10px;display:inline-flex;align-items:center;gap:6px;background:#e9efff;color:#183b8b;border-radius:999px;padding:7px 10px;font-size:.78rem}.scannerTeacherNote{margin-top:14px;background:#fff9e8;border:1px solid #eed58d;border-radius:14px;padding:13px 15px}.scannerTeacherNote b{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.scannerTeacherNote p{margin:4px 0 0;white-space:pre-wrap}.scannerVehicleSection{margin-top:15px;border:1px solid #dce2eb;border-radius:16px;padding:15px}.scannerVehicleHeading{display:flex;align-items:center;gap:10px;margin-bottom:12px}.scannerVehicleHeading span{display:block;color:#667085;font-size:.77rem;font-weight:750;text-transform:uppercase}.scannerVehicleHeading h3{margin:2px 0 0;font-size:1.05rem}.scannerVehicleGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:stretch}.scannerVehicleTile{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#e9edf3;border:1px solid #ced6e1}.scannerVehicleTile>img{display:block;width:100%;height:100%;min-width:0;object-fit:cover;position:static}.scannerVehicleTile .vehicleImageStatus{padding:10px;text-align:center;font-size:.78rem;color:#596579}.scannerNoVehicle{margin:0;padding:18px;text-align:center;background:#f6f7f9;border-radius:10px;color:#667085}.scannerHandoffBox{margin-top:16px;background:#18233a;color:#fff;border-radius:16px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.scannerHandoffBox b{font-size:1rem}.scannerHandoffBox p{margin:4px 0 0;color:#c8d1df;font-size:.86rem;max-width:570px}.scannerConfirmButton{min-height:54px;flex:none;border:0;border-radius:13px;padding:12px 18px;background:#19a463;color:#fff;font:inherit;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.scannerConfirmButton:disabled{background:#667085;color:#e5e7eb;cursor:not-allowed;opacity:.8}.scannerLog{padding:20px}.scannerLogHeader{margin-bottom:14px}.scannerLogHeader h2{font-size:1.45rem}.scannerLogList{display:grid;gap:8px}.scannerLogRow{width:100%;display:grid;grid-template-columns:104px 118px minmax(150px,.8fr) minmax(170px,1fr) minmax(210px,1.2fr);gap:12px;align-items:center;text-align:left;border-radius:14px;padding:12px 14px;font:inherit;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;background:#fff}.scannerLogRow:hover{transform:translateY(-1px);box-shadow:0 5px 13px #10182814}.scannerLogRow.pending{border:1px solid #efb1b1;border-left:6px solid #c83232;background:#fff7f7}.scannerLogRow.complete{border:1px solid #a7dabd;border-left:6px solid #159455;background:#f5fff9}.scannerLogRow.selected{outline:3px solid rgba(49,78,159,.2)}.scannerLogStatus{font-size:.77rem;font-weight:900;text-transform:uppercase;display:flex;align-items:center;gap:6px}.scannerLogDot{width:9px;height:9px;border-radius:50%;background:#c83232;box-shadow:0 0 0 3px #c8323221}.scannerLogRow.complete .scannerLogDot{background:#159455;box-shadow:0 0 0 3px #15945521}.scannerLogTime,.scannerLogChild,.scannerLogAdult,.scannerLogVehicle{display:flex;min-width:0;flex-direction:column;gap:2px}.scannerLogAdult,.scannerLogVehicle{flex-direction:row;align-items:center;gap:8px}.scannerLogAdult>span,.scannerLogVehicle>span{display:flex;flex-direction:column;min-width:0}.scannerLogRow b{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scannerLogRow small{color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scannerLogEmpty{padding:28px 12px;text-align:center;color:#667085;margin:0}.scannerLogHeader .secondary{min-height:42px;display:inline-flex;align-items:center;gap:6px}@media(max-width:980px){.scannerWorkspace{grid-template-columns:1fr}.scannerStation{position:static}.scannerLogRow{grid-template-columns:92px 105px minmax(135px,.8fr) minmax(160px,1fr)}.scannerLogVehicle{grid-column:2/-1;padding-left:0}.scannerIdentityGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.scannerDesk{padding:14px 12px 36px;gap:14px}.scannerTopbar,.scannerLogHeader{flex-direction:column}.scannerCounters{width:100%;min-width:0}.scannerCounters>div{padding:10px 8px}.scannerStation,.scannerCurrent,.scannerLog{border-radius:16px}.scannerStation,.scannerCurrent,.scannerLog{padding:15px}.scannerIdentityGrid{grid-template-columns:1fr}.scannerPersonCard{padding:13px}.scannerAdultIdentity{order:-1}.scannerCurrentBanner{align-items:flex-start;flex-direction:column}.scannerVehicleGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scannerHandoffBox{flex-direction:column;align-items:stretch}.scannerConfirmButton{width:100%;min-height:58px}.scannerLogList{gap:10px}.scannerLogRow{grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px}.scannerLogStatus{grid-column:1}.scannerLogTime{grid-column:2;text-align:right}.scannerLogChild,.scannerLogAdult,.scannerLogVehicle{grid-column:1/-1}.scannerLogAdult,.scannerLogVehicle{padding-top:6px;border-top:1px solid rgba(100,116,139,.18)}.scannerStation .search{grid-template-columns:auto minmax(0,1fr)}.scannerStation .search button{grid-column:1/-1;width:100%}.scannerStationTitle{align-items:flex-start}}@media(max-width:430px){.scannerVehicleGrid{grid-template-columns:1fr}.scannerCounters b{font-size:1.2rem}.scannerTopbar h1{font-size:1.75rem}}.pa{min-height:100vh;min-height:100dvh;background:#213e4e;color:#f7fbfc;padding:0 0 calc(48px + env(safe-area-inset-bottom));overflow-x:hidden}.paTop{display:flex;align-items:center;gap:14px;padding:calc(18px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 18px max(24px,env(safe-area-inset-left));border-bottom:1px solid #4B7488;position:sticky;top:0;background:#213e4ef2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:5}.paTop b{font-size:clamp(.95rem,2vw,1.05rem)}.paTop small{display:block;color:#b9d3de;font-weight:500}.paTop .grow{flex:1;min-width:0}.paBody{max-width:1180px;margin:0 auto;padding:24px max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left))}.paPageHeading{margin:0 0 20px}.paPageHeading h1{margin:0 0 6px;font-size:clamp(1.55rem,4vw,2rem);line-height:1.15;letter-spacing:-.02em}.paPageHeading p{margin:0;color:#b9d3de;max-width:760px}.paStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:14px;margin-bottom:22px}.paStats div{background:#2a5064;border:1px solid #4B7488;border-radius:14px;padding:16px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.paStats div:hover{transform:translateY(-2px);border-color:#73aeca;box-shadow:0 10px 28px #10293644}.paStats b{display:block;font-size:clamp(1.35rem,5vw,1.6rem)}.paStats small{color:#b9d3de}.paCard{background:#2a5064;border:1px solid #4B7488;border-radius:16px;padding:18px;margin-bottom:18px;min-width:0}.paCard h2{font-size:1.05rem;margin:0 0 4px}.paCard p.sub{color:#b9d3de;font-size:.85rem;margin:0 0 14px}.paSearch{width:100%;background:#213e4e;border:1px solid #5B8294;color:#f7fbfc;border-radius:11px;padding:12px 13px;margin-bottom:14px;font-size:16px}.paSearch::placeholder{color:#afc8d2}.paOrg{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-top:1px solid #4B7488;padding:14px 0;min-width:0}.paOrg .grow{flex:1;min-width:min(180px,100%);overflow-wrap:anywhere}.paOrg b{display:block}.paOrg small{color:#b9d3de;overflow-wrap:anywhere}.paTag{border-radius:999px;padding:5px 10px;font-size:.72rem;font-weight:800;text-transform:uppercase;white-space:nowrap}.paTag.ok{background:#edf6fa;color:#23556d}.paTag.off{background:#5b2a25;color:#ffd0c8}.paMetrics{display:flex;gap:10px 14px;flex-wrap:wrap;color:#c8dde5;font-size:.8rem}.paBtn{min-height:44px;border:1px solid #73AECA;background:#2c6884;color:#fff;border-radius:10px;padding:9px 14px;font-weight:700;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease;touch-action:manipulation}.paBtn:hover{background:#23556d;border-color:#9ac8dc;box-shadow:0 6px 18px #10293644}.paBtn:active{transform:scale(.97)}.paBtn:focus-visible,.paSearch:focus-visible{outline:3px solid #E98A3166;outline-offset:2px}.paBtn.danger{border-color:#c45b50;background:#5b2a25;color:#ffd0c8}.paEvent{display:flex;gap:12px;border-top:1px solid #4B7488;padding:10px 0;font-size:.85rem;flex-wrap:wrap;overflow-wrap:anywhere}.paEvent time{color:#b9d3de;margin-left:auto}.paError{background:#5b2a25;border:1px solid #C45B50;color:#ffd0c8;border-radius:11px;padding:11px;margin-bottom:14px}.paEmpty{color:#b9d3de;padding:14px 0}@media(max-width:640px){.paTop{padding-top:calc(12px + env(safe-area-inset-top));padding-right:max(14px,env(safe-area-inset-right));padding-left:max(14px,env(safe-area-inset-left));gap:10px;align-items:flex-start;flex-wrap:wrap}.paTop .paBtn{margin-left:auto}.paBody{padding:16px max(14px,env(safe-area-inset-right)) 16px max(14px,env(safe-area-inset-left))}.paPageHeading{margin-bottom:16px}.paCard{padding:15px;border-radius:14px}.paOrg{align-items:flex-start;display:grid;grid-template-columns:1fr}.paOrg .paBtn{width:100%}.paMetrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.paEvent time{width:100%;margin-left:0}}@media(max-width:380px){.paStats,.paMetrics{grid-template-columns:1fr}.paTop small{font-size:.72rem}}@media(prefers-reduced-motion:reduce){.paStats div,.paBtn{transition:none}.paStats div:hover{transform:none}}.connectivityStatus{position:fixed;left:50%;top:max(12px,env(safe-area-inset-top));z-index:10000;transform:translate(-50%);display:flex;align-items:flex-start;gap:10px;max-width:min(92vw,640px);padding:12px 14px;border-radius:14px;box-shadow:0 10px 30px #0000002e;font-size:14px;line-height:1.35}.connectivityStatus div{display:grid;gap:2px}.connectivityStatus b{font-size:14px}.connectivityStatus span{font-size:13px}.connectivityStatus.offline{background:#fff4ef;border:1px solid #e98a31;color:#6f3712}.connectivityStatus.restored{background:#eef8f2;border:1px solid #78aa8a;color:#234a31}@media(max-width:640px){.connectivityStatus{top:max(8px,env(safe-area-inset-top));width:calc(100vw - 24px);padding:11px 12px}.connectivityStatus span{font-size:12px}}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#17212b;background:#f6f8fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}aside{background:#123b5d;color:#fff;padding:24px 16px;display:flex;flex-direction:column;position:fixed;width:260px;height:100vh;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:800;padding:2px 8px 30px}.brand>span{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#2e7d6e}.brand small,.user small{display:block;color:#9ebbb4;font-size:10px;font-weight:600;margin-top:2px;letter-spacing:.04em}.close{display:none;margin-left:auto;background:none;color:#fff;border:0}.brand svg{width:22px}.user{margin-top:auto;border-top:1px solid #28443e;padding:18px 7px 0;display:flex;align-items:center;gap:9px;font-size:12px}.user svg{margin-left:auto;color:#91aaa4}.avatar{width:35px;height:35px;border-radius:50%;background:#ddf8ec;color:#2e7d6e;display:grid;place-items:center;font-weight:800}nav{display:grid;gap:5px}nav button{background:none;border:0;color:#a9c2bc;display:flex;align-items:center;gap:12px;padding:12px;border-radius:9px;text-align:left;font-weight:650;font-size:14px;cursor:pointer}nav button:hover,nav button.active{background:#183d35;color:#fff}main{grid-column:2;min-width:0}header{height:88px;padding:18px 34px;background:#fff;border-bottom:1px solid #e2e9e7;display:flex;align-items:center;justify-content:space-between}h1{font-size:20px;margin:0 0 5px}header p,.panelHead p{margin:0;color:#72817d;font-size:12px}.role{display:flex;align-items:center;gap:9px;color:#77827f;font-size:11px}.role select{border:1px solid #dbe4e1;padding:10px 30px 10px 11px;border-radius:9px;background:#fff;font-weight:700}.content{padding:28px 34px;max-width:1300px;margin:auto}.hero{min-height:210px;border-radius:20px;padding:34px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:radial-gradient(circle at 90% 20%,#236454 0,transparent 30%),linear-gradient(130deg,#123b5d,#1f5e8c);box-shadow:0 18px 45px #10352b24}.hero h2{font-size:32px;max-width:700px;line-height:1.15;margin:16px 0 10px}.hero p{color:#bed4ce;max-width:650px}.eyebrow,.safe,.authorized{display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;color:#60e1b2}.primary,.secondary{border:0;border-radius:10px;padding:13px 17px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.primary{background:#2e7d6e;color:#fff}.hero .primary{background:#fff;color:#1f5e8c}.primary svg{width:18px}.secondary{background:#eef3f1;color:#27423a}.full{width:100%;margin-top:22px}.small{padding:9px 12px;font-size:12px;margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.stat{background:#fff;border:1px solid #e0e8e5;border-radius:14px;padding:18px;display:flex;gap:13px;align-items:center}.stat>span{width:42px;height:42px;border-radius:11px;display:grid;place-items:center}.stat svg{width:20px}.stat .blue{color:#2077c8;background:#e8f3ff}.stat .purple{color:#7957c9;background:#f0ebff}.stat .gold{color:#a46a08;background:#fff4da}.stat .red{color:#ca3c45;background:#ffeaec}.stat b{font-size:25px}.stat small{display:block;color:#7d8986}.panel{background:#fff;border:1px solid #e1e8e6;border-radius:15px;overflow:hidden}.panelHead{padding:19px 21px;border-bottom:1px solid #edf1f0;display:flex;justify-content:space-between;align-items:center}.panelHead h3,.step h3{margin:0 0 5px}.live{font-size:10px;color:#0e9d6d;font-weight:900;background:#e9fff6;padding:6px 9px;border-radius:20px}.queueRow{display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid #edf1f0}.grow{flex:1}.queueRow b{display:block;font-size:14px}.queueRow small{color:#7c8985}.studentAvatar,.bigAvatar{display:grid;place-items:center;border-radius:10px;background:#e6f5f0;color:#2e7d6e;font-weight:850}.studentAvatar{width:42px;height:42px}.status{font-size:10px;text-transform:uppercase;font-weight:900;padding:6px 9px;border-radius:15px}.status.requested{background:#eaf4ff;color:#2770ad}.status.verified{background:#f1ebff;color:#7553b5}.status.released{background:#fff2d9;color:#976416}.status.completed{background:#e7faef;color:#128054}.status.exception{background:#ffe9eb;color:#b42318}.empty{text-align:center;padding:55px;color:#8a9693}.empty svg{color:#b8c6c2}.empty h3{color:#53605d;margin-bottom:4px}.empty p{margin:0;font-size:13px}.narrow{max-width:720px;margin:auto}.step{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.step>span{background:#1f5e8c;color:#fff;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-weight:800;font-size:12px}.step p{margin:0;color:#75817e;font-size:13px}.top{margin-top:30px}.cards{display:grid;gap:10px}.studentCard{background:#fff;border:2px solid #e0e7e5;border-radius:13px;padding:14px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}.studentCard>div:nth-child(2){flex:1}.studentCard small{display:block;color:#71807c;margin-top:3px}.studentCard.selected,.choices button.selected{border-color:#2e7d6e;background:#f1fff9}.check{border:2px solid #ccd8d4;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff}.selected .check{background:#2e7d6e;border-color:#2e7d6e}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choices button{background:#fff;border:2px solid #e0e7e5;padding:15px;border-radius:12px;text-align:left}.choices small,.choices b{display:block}.choices small{color:#76827f;margin-bottom:5px}.modal{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;background:#071b16cc;display:grid;place-items:center;padding:18px}.modalCard{position:relative;background:#fff;border-radius:22px;padding:30px;text-align:center;max-width:410px;width:100%}.modalCard h2{margin-bottom:4px}.modalCard p{color:#78837f;font-size:13px;margin-bottom:22px}.modalCard code{display:block;font-size:8px;margin:10px;color:#89928f;word-break:break-all}.modalCard .safe{color:#0a9163}.x{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px}.picked{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.picked span{font-size:11px;background:#eaf6f2;padding:5px 8px;border-radius:10px}.scannerBox{text-align:center;background:#fff;border:1px solid #e0e8e5;border-radius:18px;padding:32px}.scannerBox>svg{color:#2e7d6e}.scannerBox p{color:#75817d;font-size:13px}.search{display:flex;align-items:center;border:1px solid #d6e0dd;border-radius:10px;padding:0 12px;margin-top:20px}.search svg{width:17px;color:#8b9894}.search input{border:0;outline:0;padding:13px;width:100%}.alert,.match{background:#fff;border-radius:14px;padding:20px;margin-top:16px;border:1px solid #e0e8e5}.alert{display:flex;gap:12px}.danger{border-color:#ffcfd2;color:#9b2832;background:#fff7f7}.alert p{margin:4px 0 0}.authorized{color:#098c61;background:#e8fff5;padding:7px 10px;border-radius:20px}.identity,.child{display:flex;align-items:center;gap:15px;padding:18px 0}.bigAvatar{width:70px;height:70px;border-radius:18px;font-size:23px}.identity small,.child small{color:#798682;font-size:9px;font-weight:900;letter-spacing:.09em}.identity h3{margin:3px 0}.identity p,.child p{margin:2px 0;color:#76817e;font-size:12px}.child{border-top:1px solid #e7edeb}.warning{background:#fff8e6;color:#795814;padding:12px;border-radius:9px;font-size:12px}.actions{display:flex;align-items:center;gap:7px}.iconDanger{border:0;background:#fff0f1;color:#b42318;width:35px;height:35px;border-radius:8px}.iconDanger svg{width:16px}.audit{display:flex;padding:15px 20px;border-bottom:1px solid #edf1f0;align-items:flex-start;gap:13px}.auditDot{width:9px;height:9px;background:#2e7d6e;border-radius:50%;margin-top:5px}.audit p{margin:3px 0;color:#75817e;font-size:12px}.audit time{font-size:11px;color:#87928f}.securityHero{background:#123b5d;color:#fff;padding:27px;border-radius:16px;display:flex;align-items:center;gap:18px}.securityHero>svg{width:48px;height:48px;color:#4bddaa}.securityHero h2,.securityHero p{margin:0}.securityHero p{color:#b9d1ca;margin-top:5px}.securityGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.securityGrid>div{background:#fff;border:1px solid #e0e8e5;padding:20px;border-radius:13px}.securityGrid svg{color:#2e7d6e}.securityGrid h3{font-size:14px}.securityGrid p{font-size:12px;color:#71807c}.hamb{display:none;background:none;border:0}.close{cursor:pointer}@media(max-width:800px){.app{display:block}aside{transform:translate(-100%);transition:.2s}.app aside.open{transform:translate(0);box-shadow:10px 0 30px #0005}.close,.hamb{display:block}main{grid-column:auto}header{padding:15px 18px;height:78px;gap:10px}.hamb{padding:0}header h1{font-size:17px}header p{display:none}.role span{display:none}.content{padding:18px}.hero{padding:23px;display:block;min-height:240px}.hero h2{font-size:27px}.hero .primary{margin-top:15px}.stats,.securityGrid{grid-template-columns:1fr 1fr}.choices{grid-template-columns:1fr}.queueRow{flex-wrap:wrap}.actions{width:100%;justify-content:flex-end}}@media(max-width:480px){.stats,.securityGrid{grid-template-columns:1fr}.stat{padding:13px}.role select{max-width:125px}.hero h2{font-size:24px}.panelHead{align-items:flex-start}.queueRow{padding:13px}.status{margin-left:auto}}.lp{background:#f6f8fb}.lpNav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;padding:14px 28px;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e2e9e7;height:auto}.lpBrand{display:flex;align-items:center;gap:10px;font-weight:850;color:#123b5d;text-decoration:none;font-size:17px}.lpBrand>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#2e7d6e;color:#fff}.lpBrand svg{width:19px}.lpLinks{display:flex;gap:20px;margin-left:auto}.lpLinks a{color:#3d534d;text-decoration:none;font-weight:650;font-size:14px}.lpLinks a:hover{color:#2e7d6e}.lpAuth{display:flex;gap:9px}.lpAuth a{text-decoration:none}.lpHero{padding:80px 28px;color:#fff;background:radial-gradient(circle at 85% 15%,#236454 0,transparent 35%),linear-gradient(130deg,#123b5d,#1f5e8c)}.lpHero>div{max-width:900px;margin:auto}.lpHero h1{font-size:48px;line-height:1.08;margin:14px 0}.lpHero p{color:#c2d7d1;font-size:17px;max-width:680px}.lpCta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.lpCta a{text-decoration:none}.lpCta .primary{background:#fff;color:#1f5e8c}.lpCta .secondary{background:#1c5346;color:#dff5ec}.lpSection{padding:64px 28px;max-width:1120px;margin:auto}.lpSection.alt{background:#fff;max-width:none;border-block:1px solid #e5ebe9}.lpSection.alt>*{max-width:1120px;margin-inline:auto}.lpSection h2{font-size:30px;margin:0 0 8px;text-align:center}.lpLede{text-align:center;color:#6d7b77;margin:0 auto 34px;max-width:620px}.lpGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lpGrid article{background:#fff;border:1px solid #e1e8e6;border-radius:15px;padding:22px}.lpGrid svg{color:#2e7d6e;width:26px;height:26px}.lpGrid h3{font-size:16px;margin:12px 0 6px}.lpGrid p{margin:0;color:#6f7d79;font-size:14px;line-height:1.55}.lpPlans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}.lpPlans article{background:#f8faf9;border:1px solid #e1e8e6;border-radius:16px;padding:24px}.lpPlans article.featured{background:#123b5d;color:#fff;border-color:#123b5d}.lpPlans h3{margin:0;font-size:15px;letter-spacing:.05em;text-transform:uppercase}.lpPlans b{display:block;font-size:34px;margin:8px 0 2px}.lpPlans small{color:#8b9793}.lpPlans article.featured small{color:#9dbdb3}.lpPlans ul{list-style:none;padding:0;margin:18px 0;display:grid;gap:9px;font-size:14px}.lpPlans li{display:flex;align-items:center;gap:8px}.lpPlans svg{color:#16b784}.lpPlans a{text-decoration:none;margin-top:6px}.lpFaq{display:grid;gap:10px;max-width:760px;margin:auto}.lpFaq details{background:#fff;border:1px solid #e1e8e6;border-radius:12px;padding:16px 18px}.lpFaq summary{font-weight:750;cursor:pointer}.lpFaq p{color:#6f7d79;margin:10px 0 0;font-size:14px}.lpContact{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.lpContact a{text-decoration:none}.lpFooter{background:#123b5d;color:#c3d7d1;padding:44px 28px}.lpFooter>div{max-width:760px;margin:auto}.lpFooter b{color:#fff;display:block;margin-bottom:8px}.lpFooter p{font-size:13px;line-height:1.6;margin:0}.lpFooter small{display:block;text-align:center;margin-top:28px;color:#7fa197;font-size:12px}.authWrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 0,#e2f4ed 0,#f6f8fb 55%)}.authCard{background:#fff;border:1px solid #e1e8e6;border-radius:20px;padding:30px;width:100%;max-width:430px;box-shadow:0 20px 50px #10352b12}.authCard h1{font-size:24px;margin:18px 0 6px}.muted{color:#72817d;font-size:13px;margin:0 0 18px}.authCard form,.stack{display:grid;gap:13px}label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#354742}input,select,textarea{font:inherit;border:1px solid #d6e0dd;border-radius:10px;padding:12px;background:#fff;width:100%}input:focus,select:focus{outline:2px solid #2E7D6E55;border-color:#2e7d6e}.formError{background:#fff2f3;color:#a52e38;border:1px solid #ffd2d6;padding:11px;border-radius:10px;font-size:13px}.formNotice{background:#eefaf4;color:#0d7d59;border:1px solid #c8ecdd;padding:11px;border-radius:10px;font-size:13px}.inPanel{margin:16px 20px}.linkBtn{background:none;border:0;color:#2e7d6e;font-weight:700;font-size:13px;margin-top:16px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.tabs{display:flex;gap:6px;background:#eef3f1;padding:5px;border-radius:11px;margin-bottom:18px}.tabs button{flex:1;border:0;background:none;padding:10px;border-radius:8px;font-weight:750;font-size:13px;cursor:pointer;color:#5b6b66}.tabs button.active{background:#fff;color:#123b5d;box-shadow:0 2px 6px #123b5d0f}.codeBox{display:flex;align-items:center;gap:10px;background:#f2f7f5;border:1px dashed #b9d3c9;border-radius:12px;padding:14px;margin:14px 0}.codeBox code{font-size:18px;font-weight:800;letter-spacing:.12em;flex:1;word-break:break-all}.loadingScreen{min-height:100vh;display:grid;place-items:center;background:#f6f8fb}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid #d5e5df;border-top-color:#2e7d6e;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.rowForm{display:flex;gap:10px;padding:18px 20px;flex-wrap:wrap}.rowForm input,.rowForm select{flex:1;min-width:150px;width:auto}.spaced{margin-bottom:16px}.iconGhost{margin-left:auto;background:none;border:0;color:#91aaa4;cursor:pointer;padding:6px}.iconGhost:hover{color:#fff}.search button{margin-left:8px;white-space:nowrap}.status.cancelled{background:#eef1f0;color:#66716e}@media(max-width:860px){.lpLinks{display:none}.lpHero{padding:56px 20px}.lpHero h1{font-size:33px}.lpGrid,.lpPlans{grid-template-columns:1fr}.lpSection{padding:44px 20px}.lpNav{padding:12px 16px;gap:10px}.lpAuth{margin-left:auto}}.groupRow{border:1px solid #e1e8e6;border-radius:14px;padding:14px 16px;margin-bottom:12px}.groupHead{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.groupHead .grow b{display:block}.groupHead .grow small{color:#75817e}.groupBody{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.chip{display:inline-flex;align-items:center;gap:6px;background:#eef3f1;border:1px solid #e1e8e6;border-radius:999px;padding:5px 10px;font-size:.83rem}.chip button{background:none;border:0;color:#75817e;cursor:pointer;font-size:1rem;line-height:1}.chip button:hover{color:#b42318}.cameraBox{display:flex;flex-direction:column;gap:10px;align-items:center;width:100%}.cameraBox video{width:100%;max-width:420px;border-radius:14px;background:#000;aspect-ratio:4/3;object-fit:cover}.identityPhoto{border-radius:50%;object-fit:cover;background:#e6efec;color:#0d5f47;display:inline-grid;place-items:center;font-weight:800;flex:none}.identityPhoto.sm{width:40px;height:40px;font-size:.8rem}.identityPhoto.lg{width:76px;height:76px;font-size:1.2rem}.photoUploader{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.photoPick{display:inline-flex;align-items:center;position:relative;font-size:.83rem;font-weight:700;color:#0d8f63;cursor:pointer}.photoPick input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer}.photoError{color:#a52e38;font-size:.8rem}.googleAuthButton{margin-top:16px;justify-content:center;gap:10px}.googleAuthMark{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #d9e1df;border-radius:50%;background:#fff;font-size:.82rem;font-weight:800;color:#31453f}.googleIdentityHost{margin-top:16px;width:100%;min-height:44px;display:flex;justify-content:center;overflow:hidden}.googleIdentityHost>div{width:100%!important}.googleIdentityHost iframe{max-width:100%!important}.googleIdentityHost.busy{pointer-events:none;opacity:.7}.googleIdentityHost .googleAuthButton{margin-top:0}.authDivider{display:flex;align-items:center;gap:10px;margin:14px 0;color:#73827d;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.authDivider:before,.authDivider:after{content:"";height:1px;flex:1;background:#e3e9e7}.authDivider span{white-space:nowrap}.exceptionForm{display:flex;flex-direction:column;gap:10px;min-width:min(340px,80vw)}.exceptionForm textarea{width:100%;min-height:74px;border:1px solid #dde5e2;border-radius:10px;padding:10px;font:inherit}.auditMeta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.auditMeta span{background:#f2f7f5;border:1px solid #e1e8e6;border-radius:999px;padding:2px 9px;font-size:.75rem;color:#41544e}.auditNotes{font-size:.8rem;color:#5b6b66;margin-top:4px;word-break:break-word}.alertBell{position:relative;background:none;border:0;color:#0d2923;cursor:pointer;padding:8px}.alertBell b{position:absolute;top:2px;right:2px;background:#bf3640;color:#fff;border-radius:999px;font-size:.62rem;padding:1px 5px}.alertList{display:flex;flex-direction:column;gap:8px}.alertRow{display:flex;align-items:center;gap:10px;border:1px solid #ffe0b8;background:#fff9ef;border-radius:12px;padding:10px 12px}.alertRow .grow b{display:block}.adminSearch{padding:14px 20px}.adminSearch input{width:100%}@media(max-width:640px){.rowForm{flex-direction:column}.rowForm input,.rowForm select,.rowForm button{width:100%}.queueRow{flex-wrap:wrap}}html{width:100%;min-height:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body,#root{width:100%;min-width:0;min-height:100%;min-height:100dvh;overflow-x:hidden}body{padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}img,svg,video,canvas{max-width:100%}button,a,input,select,textarea{max-width:100%}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,.primary,.secondary,.linkBtn,.hamb,.close,.iconDanger,.iconGhost{transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}button:not(:disabled):active,.primary:not(:disabled):active,.secondary:not(:disabled):active{transform:scale(.97)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2E7D6E55;outline-offset:2px}.primary,.secondary,.hamb,.close,.iconDanger,.iconGhost{min-height:44px}.app{min-height:100vh;min-height:100dvh}aside{height:100vh;height:100dvh;padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:calc(24px + env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left))}main>header{padding-top:calc(18px + env(safe-area-inset-top));height:auto;min-height:88px;padding-right:max(34px,env(safe-area-inset-right))}.content{width:100%;min-width:0;padding-right:max(34px,env(safe-area-inset-right));padding-bottom:calc(28px + env(safe-area-inset-bottom));padding-left:max(34px,env(safe-area-inset-left))}.hero{overflow:hidden}.hero h2,.lpHero h1,.lpSection h2{font-size:clamp(1.5rem,5vw,3rem)}.panel,.scannerBox,.alert,.match,.studentCard,.securityHero,.securityGrid>div,.authCard,.lpGrid article,.lpFaq details{min-width:0}.queueRow,.identity,.child,.audit,.groupRow,.rowForm{min-width:0}.queueRow .grow,.identity>div,.child>div,.audit>div,.groupHead .grow{min-width:0;overflow-wrap:anywhere}.modal{padding:calc(18px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));overflow:auto}.modalCard{max-height:calc(100dvh - 36px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}.lp{min-height:100dvh;overflow-x:hidden}.lpNav{top:0;padding-top:calc(14px + env(safe-area-inset-top));padding-right:max(28px,env(safe-area-inset-right));padding-left:max(28px,env(safe-area-inset-left));min-width:0}.lpBrand{flex:0 1 auto;min-width:0;white-space:nowrap}.lpAuth{min-width:0;flex-wrap:wrap;justify-content:flex-end}.lpHero,.lpSection,.lpFooter{padding-right:max(28px,env(safe-area-inset-right));padding-left:max(28px,env(safe-area-inset-left))}.authWrap{min-height:100vh;min-height:100dvh;padding-top:calc(24px + env(safe-area-inset-top));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:calc(24px + env(safe-area-inset-bottom));padding-left:max(24px,env(safe-area-inset-left));align-content:center}.authCard{max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}.lpGrid article,.stat,.panel,.authCard,.securityGrid>div{animation:k2pRise .45s ease both}.lpGrid article:nth-child(2),.stats .stat:nth-child(2){animation-delay:.04s}.lpGrid article:nth-child(3),.stats .stat:nth-child(3){animation-delay:.08s}.lpGrid article:nth-child(4),.stats .stat:nth-child(4){animation-delay:.12s}.primary:not(:disabled):hover,.secondary:not(:disabled):hover{box-shadow:0 8px 22px #123b5d1f;transform:translateY(-1px)}.lpGrid article,.stat,.securityGrid>div,.studentCard{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.lpGrid article:hover,.stat:hover,.securityGrid>div:hover,.studentCard:hover{transform:translateY(-2px);box-shadow:0 12px 28px #123b5d12}@keyframes k2pRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:800px){aside{width:min(86vw,300px)}main>header{padding-top:calc(12px + env(safe-area-inset-top));padding-right:max(18px,env(safe-area-inset-right));padding-left:max(18px,env(safe-area-inset-left));min-height:calc(70px + env(safe-area-inset-top))}.content{padding-right:max(18px,env(safe-area-inset-right));padding-left:max(18px,env(safe-area-inset-left));padding-bottom:calc(18px + env(safe-area-inset-bottom))}.hamb,.close{min-width:44px;display:grid;place-items:center}.lpNav{padding-top:calc(10px + env(safe-area-inset-top));padding-right:max(14px,env(safe-area-inset-right));padding-bottom:10px;padding-left:max(14px,env(safe-area-inset-left));flex-wrap:wrap}.lpHero{padding-right:max(20px,env(safe-area-inset-right));padding-left:max(20px,env(safe-area-inset-left));padding-top:clamp(42px,10vw,56px)}.lpSection,.lpFooter{padding-right:max(20px,env(safe-area-inset-right));padding-left:max(20px,env(safe-area-inset-left))}.authWrap{padding-top:calc(16px + env(safe-area-inset-top));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:calc(16px + env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));align-content:start}.authCard{margin:auto;max-height:none}input,select,textarea{font-size:16px}.rowForm{display:grid;grid-template-columns:1fr}.rowForm input,.rowForm select,.rowForm button{width:100%;min-width:0}.panelHead{gap:10px;flex-wrap:wrap}.securityHero{align-items:flex-start}}@media(max-width:560px){.lpBrand{font-size:15px}.lpBrand>span{width:32px;height:32px}.lpAuth{gap:6px}.lpAuth .small{padding:8px 10px;font-size:11px;min-height:40px}.lpHero h1{font-size:clamp(2rem,10vw,2.65rem)}.lpHero p{font-size:15px}.lpCta{display:grid;grid-template-columns:1fr;width:100%}.lpCta a{width:100%}.authCard{padding:22px 18px;border-radius:16px}.hero{border-radius:16px;padding:20px;min-height:0}.hero h2{font-size:clamp(1.45rem,8vw,2rem)}.stats{grid-template-columns:1fr}.panelHead{padding:16px}.queueRow,.audit{padding:13px 16px}.identity,.child{align-items:flex-start}.bigAvatar{width:56px;height:56px;border-radius:14px;font-size:18px;flex:0 0 auto}.scannerBox{padding:20px 14px}.securityHero{padding:20px;display:grid;grid-template-columns:auto 1fr}.securityHero>svg{width:38px;height:38px}.securityGrid{grid-template-columns:1fr}.actions{display:grid;grid-template-columns:1fr;gap:8px}.actions>*{width:100%}.codeBox{display:grid;grid-template-columns:1fr}.codeBox .secondary{width:100%}}@media(max-width:390px){.lpNav{gap:7px}.lpBrand{font-size:14px;gap:7px}.lpBrand>span{width:30px;height:30px}.lpAuth{margin-left:auto}.lpAuth a:first-child{display:none}.lpAuth .small{padding:7px 9px}.content{padding-right:max(12px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left))}main>header{padding-right:max(12px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left));gap:6px}.role select{max-width:112px;padding-left:8px;padding-right:20px}.hero{padding:17px}.panel,.scannerBox,.alert,.match{border-radius:12px}.modal{padding-right:max(10px,env(safe-area-inset-right));padding-left:max(10px,env(safe-area-inset-left))}.modalCard{padding:24px 16px;border-radius:16px}}@media(max-width:330px){.lpAuth .small{font-size:10px;padding:7px 8px}.lpBrand{font-size:13px}.lpBrand>span{display:none}header h1{font-size:15px}.role select{max-width:100px;font-size:11px}}@media(hover:none){.lpGrid article:hover,.stat:hover,.securityGrid>div:hover,.studentCard:hover,.primary:not(:disabled):hover,.secondary:not(:disabled):hover{transform:none;box-shadow:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--k2p-blue:#2C6884;--k2p-blue-deep:#23556D;--k2p-blue-light:#73AECA;--k2p-orange:#E98A31;--k2p-orange-deep:#C96F1E;--k2p-gold:#E4B988;--k2p-slate:#5F6F76;--k2p-soft:#B9C4C7;--k2p-cream:#FAF9F5;--k2p-white:#FFFFFF;--k2p-ink:#263844;--k2p-border:#DDE5E7;--k2p-blue-wash:#EDF6FA;--k2p-orange-wash:#FFF3E8}html,body,#root{background:var(--k2p-cream);color:var(--k2p-ink)}body{background:linear-gradient(180deg,#fff 0,var(--k2p-cream) 48%,#f7f5ef 100%)}aside{background:linear-gradient(180deg,var(--k2p-blue-deep),var(--k2p-blue));color:#fff}.brand>span,.lpBrand>span{background:linear-gradient(135deg,var(--k2p-blue-light),var(--k2p-blue));box-shadow:0 6px 18px #2c688433}.brand small,.user small{color:#c4dce7}.user{border-top-color:#ffffff2b}.user svg{color:#d3e4eb}.avatar{background:#fff3e8;color:var(--k2p-orange-deep)}nav button{color:#d0e1e8}nav button:hover,nav button.active{background:#ffffff18;color:#fff;box-shadow:inset 3px 0 0 var(--k2p-orange)}header{background:#fff;border-bottom-color:var(--k2p-border)}header p,.panelHead p{color:var(--k2p-slate)}.role{color:var(--k2p-slate)}.role select{border-color:var(--k2p-border);color:var(--k2p-ink)}.hero,.lpHero{background:radial-gradient(circle at 88% 16%,#e98a3138 0,transparent 28%),radial-gradient(circle at 72% 90%,#73aeca30 0,transparent 30%),linear-gradient(130deg,var(--k2p-blue-deep),var(--k2p-blue))}.hero{box-shadow:0 18px 45px #2c688426}.hero p,.lpHero p{color:#d8e8ee}.eyebrow,.safe,.authorized{color:#ffd2a9}.primary{background:var(--k2p-blue);color:#fff;box-shadow:0 5px 14px #2c688425}.primary:hover{background:var(--k2p-blue-deep)}.primary:active{transform:translateY(1px)}.hero .primary,.lpCta .primary{background:var(--k2p-orange);color:#fff}.hero .primary:hover,.lpCta .primary:hover{background:var(--k2p-orange-deep)}.secondary{background:var(--k2p-blue-wash);color:var(--k2p-blue-deep);border:1px solid #cfe0e7}.secondary:hover{background:#e3f0f5}.lpCta .secondary{background:#ffffff17;color:#fff;border-color:#ffffff38}.panel,.stat,.studentCard,.choices button,.scannerBox,.alert,.match,.lpGrid article,.lpFaq details{border-color:var(--k2p-border);box-shadow:0 5px 18px #2c68840c}.panel,.stat,.studentCard,.choices button,.scannerBox,.alert,.match{background:#fff}.panelHead,.queueRow,.audit,.child{border-color:#e8edef}.studentCard.selected,.choices button.selected{border-color:var(--k2p-orange);background:var(--k2p-orange-wash)}.check{border-color:#c9d6db}.selected .check{background:var(--k2p-orange);border-color:var(--k2p-orange)}.search{border-color:#cfdcdf;background:#fff}.search:focus-within{border-color:var(--k2p-blue-light);box-shadow:0 0 0 3px #73aeca26}input:focus,select:focus,textarea:focus{outline:2px solid #73aeca66;outline-offset:1px}.studentAvatar,.bigAvatar{background:var(--k2p-blue-wash);color:var(--k2p-blue)}.scannerBox>svg,.securityGrid svg,.lpGrid svg{color:var(--k2p-orange)}.step>span{background:var(--k2p-blue)}.auditDot{background:var(--k2p-orange)}.picked span,.authorized{background:var(--k2p-blue-wash);color:var(--k2p-blue-deep)}.warning{background:#fff6e8;color:#805322;border:1px solid #f2d3ae}.status.requested{background:var(--k2p-blue-wash);color:var(--k2p-blue)}.status.verified{background:#eef2fb;color:#536b9b}.status.released{background:var(--k2p-orange-wash);color:#a75f1d}.status.completed{background:#edf7f2;color:#31735f}.status.exception{background:#fff0ef;color:#a73c32}.live{background:var(--k2p-blue-wash);color:var(--k2p-blue-deep)}.securityHero{background:linear-gradient(135deg,var(--k2p-blue-deep),var(--k2p-blue));box-shadow:0 14px 30px #2c688420}.securityHero>svg{color:#ffb66e}.securityHero p{color:#d7e6ec}.securityGrid>div{border-color:var(--k2p-border)}.lp{background:var(--k2p-cream)}.lpNav{border-bottom-color:var(--k2p-border);background:#fffdfbf2}.lpBrand{color:var(--k2p-blue-deep)}.lpLinks a{color:#52656e}.lpLinks a:hover{color:var(--k2p-orange-deep)}.lpSection.alt{border-color:var(--k2p-border);background:#fff}.lpGrid article{background:#fff}.lpPlans article{background:#fbfaf7;border-color:var(--k2p-border)}.lpPlans article.featured{background:linear-gradient(150deg,var(--k2p-blue-deep),var(--k2p-blue));border-color:var(--k2p-blue)}.lpPlans svg{color:var(--k2p-orange)}.modal{background:#1c3541cc}.modalCard{box-shadow:0 24px 70px #19374655}.modalCard .safe{color:var(--k2p-blue)}.iconDanger{background:#fff0ef;color:#a73c32}.formError,.paError{border-color:#efc8c2}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid #e98a315c;outline-offset:2px}@media(max-width:800px){.app aside.open{box-shadow:12px 0 36px #19374655}}.brandMarkImg{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;overflow:hidden;flex:0 0 auto;box-shadow:0 4px 12px #12283a1f}.brandMarkImg img{width:100%;height:100%;object-fit:contain}.brand .brandMarkImg{width:39px;height:39px;border-radius:12px}.brand>span.brandMarkImg,.lpBrand>span.brandMarkImg{background:#fff;box-shadow:0 4px 12px #12283a1f}.installBanner{position:relative;z-index:20;width:min(760px,calc(100vw - 24px));box-sizing:border-box;margin:12px auto 0;display:flex;align-items:center;gap:12px;padding:12px 62px 12px 14px;border:1px solid rgba(44,104,132,.2);border-radius:18px;background:#fffffffa;box-shadow:0 12px 32px #17212b1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:installRise .35s ease-out}.installIcon,.installModalIcon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#73aeca,#2c6884);color:#fff}.installCopy{display:flex;flex-direction:column;min-width:0;flex:1}.installCopy strong{color:#17212b;font-size:.96rem}.installCopy span{color:#637079;font-size:.82rem;line-height:1.35}.installButton{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:7px}.installClose{position:absolute!important;right:10px!important;top:50%!important;left:auto!important;bottom:auto!important;transform:translateY(-50%)!important;margin:0!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;display:grid!important;place-items:center!important;border:0!important;border-radius:10px!important;background:var(--k2p-blue-wash)!important;color:var(--k2p-blue-deep)!important;cursor:pointer}.installOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:grid;place-items:end center;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));background:#17212b7a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.installModal{position:relative;width:min(460px,100%);box-sizing:border-box;padding:24px;border-radius:24px;background:#fff;box-shadow:0 24px 80px #00000047;animation:installModalRise .28s ease-out}.installModalClose{position:absolute;right:14px;top:14px;border:0;border-radius:10px;background:var(--k2p-blue-wash);color:var(--k2p-blue-deep);width:40px;height:40px;display:grid;place-items:center;cursor:pointer}.installModal h2{margin:16px 46px 8px 0;color:#17212b}.installModal>p{margin:0 0 18px;color:#637079}.installAction,.installInstruction{width:100%;display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--k2p-border);border-radius:12px;background:var(--k2p-cream);color:var(--k2p-ink);text-align:left}.installAction{cursor:pointer;font:inherit}.installAction:hover{border-color:var(--k2p-blue-light);background:var(--k2p-blue-wash)}.installAction.primaryLike{border-color:#2c688447;background:linear-gradient(135deg,#73aeca29,#2c688414);box-shadow:0 8px 20px #2c688414}.installAction+.installInstruction,.installInstruction+.installInstruction{margin-top:10px}.installAction>span:last-child,.installInstruction>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}.installAction small,.installInstruction small{color:var(--k2p-slate);font-size:.84rem;line-height:1.4}.installStepIcon,.installStepNumber{display:grid!important;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--k2p-blue-wash);color:var(--k2p-blue-deep)!important;font-weight:800}.installStepNumber{font-size:.9rem!important}.installProgress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0 18px}.installProgress span{height:5px;border-radius:99px;background:#e6ecee;transition:background .2s ease,transform .2s ease}.installProgress span.active{background:linear-gradient(90deg,#73aeca,#2c6884);transform:scaleY(1.1)}.safariShareCue{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0 0 14px;padding:16px;border:1px dashed rgba(44,104,132,.35);border-radius:16px;background:linear-gradient(180deg,#73aeca1f,#faf9f5f5);color:var(--k2p-blue-deep);text-align:center;animation:shareCuePulse 1.4s ease-in-out infinite}.safariShareCue small{color:var(--k2p-slate);font-size:.82rem;line-height:1.35}.safariShareCue svg{animation:shareCueBounce 1s ease-in-out infinite}.installError{margin:10px 0 0!important;color:#a52e38!important;font-size:.84rem}.installModal .full{margin-top:16px}@keyframes installRise{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes installModalRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shareCuePulse{0%,to{box-shadow:0 0 #2c688400}50%{box-shadow:0 0 0 5px #2c68840f}}@keyframes shareCueBounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@media(max-width:640px){.installBanner{justify-content:center;gap:9px;padding:10px 58px 10px 12px;margin-top:8px}.installIcon{width:38px;height:38px;border-radius:11px}.installCopy{display:none}.installButton{flex:1;min-width:0;min-height:44px;padding-inline:12px}.installOverlay{place-items:end center}.installModal{max-height:calc(100dvh - 32px);overflow:auto;padding:22px 18px 18px;border-radius:22px}.installModal h2{padding-right:18px}}@media(prefers-reduced-motion:reduce){.installBanner,.installModal,.safariShareCue,.safariShareCue svg{animation:none}}.roleChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}.roleChoices button{min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #d8e1e5;border-radius:14px;background:#fff;color:#33424b;font-weight:700;cursor:pointer}.roleChoices button.selected{border-color:#2c6884;background:#eaf4f8;color:#2c6884;box-shadow:0 0 0 2px #2c688414}.teacherGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.teacherCard{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #dfe6e9;border-radius:16px;background:#fff;text-align:left}.teacherCard.selected{border-color:#2c6884;box-shadow:0 0 0 2px #2c68841a}.teacherCard .grow{min-width:0}.teacherCard p{margin:3px 0 0;color:#637079;font-size:.84rem}.teacherCard small{color:#2c6884;font-weight:700}.teacherMini{display:flex;align-items:center;gap:8px;margin-top:8px}.teacherMini .identityPhoto{width:32px;height:32px;min-width:32px}.teacherMini span{display:flex;flex-direction:column}.teacherMini span small{font-size:.75rem;color:#637079}.teacherChooser{display:grid;gap:10px}.teacherTools{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:10px}.teacherSearch{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 12px;border:1px solid #d8e1e5;border-radius:12px;background:#fff}.teacherSearch svg{color:#2c6884;flex:0 0 auto}.teacherSearch input{border:0!important;outline:0;box-shadow:none!important;padding:0!important;min-height:40px;width:100%}.teacherTools select{min-height:46px}.setupGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.setupCard{padding:16px;border:1px solid #e0e6e8;border-radius:16px;background:#fff}.setupCard h4{margin:0 0 6px}.setupCard p{margin:0 0 14px;color:#637079}.rosterSummary{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.rosterSummary span{padding:8px 12px;border-radius:999px;background:#eef5f7;font-size:.85rem;font-weight:700;color:#2c6884}.rosterSummary.enhanced{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px}.rosterSummary.enhanced span{display:flex;flex-direction:column;gap:3px;border-radius:14px;padding:12px 14px}.rosterSummary.enhanced span b{font-size:1.4rem;line-height:1}.rosterSummary.enhanced span small{font-size:.72rem;color:#637079}.rosterSummary.enhanced span.attention{background:#fff4e8;color:#c96f1e}.fieldHelp{display:block;margin-top:5px;color:#7b8991;font-size:.75rem;font-weight:500}.profileForm{display:grid;gap:12px}.profileForm textarea{min-height:100px;resize:vertical}.studentSetup{display:grid;gap:14px}.studentSetup .panel{margin:0}.actions.vertical{flex-direction:column;align-items:stretch}.actions.vertical select{min-width:180px}.adminSimple,.selfPortal{min-height:100dvh;background:#f8fafb}.adminSimpleHeader,.selfPortalHeader{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;min-height:68px;padding:max(12px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left));background:#fffffff5;border-bottom:1px solid #e5eaed;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.adminSimpleHeader .secondary,.selfPortalHeader .secondary{margin-left:auto}.adminSimpleMain,.selfPortalMain{width:min(1100px,calc(100% - 32px));margin:0 auto;padding:26px 0 42px}.selfIdentity{display:flex;flex-direction:column;min-width:0}.selfIdentity b,.selfIdentity small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selfIdentity small{color:#637079}.selfTabs{position:sticky;top:68px;z-index:35;display:flex;justify-content:center;gap:8px;padding:10px 16px;background:#f8fafbf5;border-bottom:1px solid #e8edef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.selfTabs button{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 14px;border:1px solid #dfe6e9;border-radius:999px;background:#fff;color:#4c5c65;font-weight:700;cursor:pointer}.selfTabs button.active{background:#2c6884;border-color:#2c6884;color:#fff}.selfPortalDismissal{min-height:calc(100dvh - 120px)}.selfPortalDismissal>.app{min-height:calc(100dvh - 120px)}.selfEmptyGate{width:min(620px,calc(100% - 32px));margin:32px auto;text-align:center;padding:28px}.selfEmptyGate>svg{width:42px;height:42px;color:#2c6884}.selfEmptyGate h2{margin:10px 0 6px}.selfEmptyGate p{color:#637079;margin:0 0 18px}.familyAccount{display:grid;gap:16px}.familyAccount>.panel,.familyAccount>.studentSetup{margin:0}.familyAccount .photoUploader{margin:8px 0 14px}.dividerText{display:flex;align-items:center;gap:12px;margin:16px 0;color:#87939a;font-size:.75rem;font-weight:800;letter-spacing:.08em}.dividerText:before,.dividerText:after{content:"";height:1px;background:#e5eaed;flex:1}.empty.compact{padding:22px}.formGrid3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}.schoolProfilePanel{margin-top:16px}.receiptStrip{width:min(1100px,calc(100% - 32px));margin:14px auto 0;display:grid;gap:10px}.receiptCard{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #cfe0e8;border-radius:16px;background:#f4fbfe;box-shadow:0 8px 24px #2c688414}.receiptCard>svg{flex:0 0 auto;color:#2c6884}.receiptCard b{display:block;color:#17394a}.receiptCard p{margin:3px 0 0;color:#54656e}.receiptCard.warning{background:#fff8ee;border-color:#f0d0a9}.receiptCard.warning>svg{color:#c96f1e}.receiptCard.danger{background:#fff3f1;border-color:#efc0bb}.receiptCard.danger>svg{color:#b42318}.receiptCard .actions{flex-wrap:wrap}.receiptCard .actions button{white-space:nowrap}.formTwoCol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.optional{font-size:.74rem;color:#87939a;font-weight:600}.fileField{display:grid;gap:6px}.filePick{position:relative;display:flex;align-items:center;gap:8px;min-height:46px;padding:0 14px;border:1px dashed #b9c8cf;border-radius:12px;background:#fbfdfe;color:#2c6884;font-weight:700;cursor:pointer;overflow:hidden}.filePick input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.childProfile{padding:18px 0;border-top:1px solid #e7ecef}.childProfile:first-of-type{border-top:0}.childProfileHead{display:flex;align-items:flex-start;gap:14px}.childProfileHead h3{margin:0 0 4px}.childProfileHead p{margin:0;color:#637079}.childProfileHead>.secondary{margin-left:auto}.childProfileDetails{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:14px;padding:14px;border-radius:14px;background:#f8fafb}.childProfileDetails>div{display:flex;flex-direction:column;gap:6px}.childProfileDetails>div>span:first-child{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#87939a;font-weight:800}.childProfileDetails .wide{grid-column:1/-1}.childProfileDetails p{margin:0;color:#4e5e67}.childEditForm{margin-top:16px;padding:16px;border-radius:14px;background:#f8fafb}.childEditForm .actions{justify-content:flex-start}.studentSetup .status{display:inline-flex;align-items:center;gap:5px;width:max-content}.schoolMapCard{width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}.schoolMapFrame{width:100%;aspect-ratio:16/9;border:1px solid #d8e1e5;border-radius:16px;overflow:hidden;background:#eef3f5;margin:14px 0}.schoolMapFrame iframe{width:100%;height:100%;border:0;display:block}.mapAddressReview{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#f6fafc;border:1px solid #dbe7ec;border-radius:14px}.mapAddressReview>svg{color:#2c6884;flex:0 0 auto;margin-top:2px}.mapAddressReview b{display:block}.mapAddressReview p{margin:3px 0 0;color:#5c6c75}.schoolMapCard .actions{margin-top:14px;flex-wrap:wrap}.schoolMapCard .actions button{flex:1;min-width:220px}.codeBox.inPanel button{min-width:92px}.onboardingProgressWrap{margin:20px 0 24px}.onboardingProgressText{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;color:#64737b;font-size:.78rem;font-weight:800;letter-spacing:.02em}.onboardingProgress{height:8px;border-radius:999px;background:#e8eef1;overflow:hidden}.onboardingProgress>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2c6884,#73aeca);transition:width .2s ease}.onboardingActions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.onboardingActions.single{justify-content:flex-end}.onboardingActions .primary,.onboardingActions .secondary{min-width:132px}.onboardingReview{display:grid;gap:10px;margin:18px 0;padding:14px;border:1px solid #dde6ea;border-radius:16px;background:#f8fbfc}.onboardingReview>div{display:flex;flex-direction:column;gap:3px}.onboardingReview small{color:#7b8991;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.onboardingReview b{color:#21333c}.onboardingSuccessIcon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 14px;border-radius:50%;background:#eaf6f1;color:#2c6884}.authBackArrow{position:fixed;left:max(18px,env(safe-area-inset-left));top:max(18px,env(safe-area-inset-top));z-index:60;width:44px;height:44px;display:grid;place-items:center;border:1px solid #e0e5e8;border-radius:50%;background:#fff;color:#111;text-decoration:none;box-shadow:0 8px 24px #11182717}.authBackArrow:hover{background:#f6f8f9}.authSessionRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}.keepSignedIn{display:flex!important;align-items:center;gap:8px!important;font-size:.9rem;font-weight:650;color:#33424b}.keepSignedIn input{width:17px!important;height:17px!important;margin:0;accent-color:#2C6884}.workspaceBackArrow{width:38px;height:38px;min-width:38px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#111;cursor:pointer}.workspaceBackArrow:hover{background:#eef2f4}.workspaceBackArrow svg{width:23px;height:23px}.structuredSelect{min-height:46px}.phoneField{font-variant-numeric:tabular-nums}@media(max-width:860px){.rosterSummary.enhanced{grid-template-columns:repeat(2,minmax(0,1fr))}.rosterSummary.enhanced span:last-child{grid-column:1/-1}}@media(max-width:700px){.receiptCard{align-items:flex-start;flex-wrap:wrap}.receiptCard .actions{width:100%}.receiptCard .actions button{flex:1}.formGrid3,.formTwoCol,.teacherTools{grid-template-columns:1fr}.childProfileHead{flex-wrap:wrap}.childProfileHead>.secondary{margin-left:0;width:100%}.childProfileDetails{grid-template-columns:1fr}.childProfileDetails .wide{grid-column:auto}.schoolMapFrame{aspect-ratio:4/3}.schoolMapCard .actions{display:grid;grid-template-columns:1fr}.schoolMapCard .actions button{min-width:0;width:100%}.onboardingActions{display:grid;grid-template-columns:1fr 1fr}.onboardingActions.single{grid-template-columns:1fr}.onboardingActions .primary,.onboardingActions .secondary{width:100%;min-width:0}.authSessionRow{align-items:flex-start;flex-direction:column}.authSessionRow .linkBtn{padding-left:0}}@media(max-width:640px){.roleChoices{grid-template-columns:1fr}.roleChoices button{min-height:54px;flex-direction:row;justify-content:flex-start;padding:0 14px}.teacherGrid,.setupGrid{grid-template-columns:1fr}.adminSimpleHeader,.selfPortalHeader{padding-left:12px;padding-right:12px}.selfPortalHeader .lpBrand{font-size:0}.selfPortalHeader .lpBrand svg{font-size:initial}.selfIdentity{flex:1}.selfTabs{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}.selfTabs button{white-space:nowrap}.adminSimpleMain,.selfPortalMain{width:min(100% - 20px,1100px);padding-top:16px}.receiptStrip{width:min(100% - 20px,1100px)}.actions.vertical{width:100%;margin-top:8px}.actions.vertical select{width:100%;min-width:0}.rosterSummary.enhanced{grid-template-columns:1fr 1fr}.rosterSummary.enhanced span:last-child{grid-column:1/-1}.onboardingProgressText{font-size:.72rem}.authBackArrow{left:max(10px,env(safe-area-inset-left));top:max(10px,env(safe-area-inset-top));width:40px;height:40px}}.connectionBanner{width:min(1100px,calc(100% - 32px));margin:14px auto 0;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #cfe0e8;border-radius:16px;background:#f4fbfe;box-shadow:0 8px 24px #2c688414}.connectionBanner>svg{color:#e98a31;flex:0 0 auto}.connectionBanner>div{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.connectionBanner b{color:#17394a}.connectionBanner span{color:#5e6d75;font-size:.85rem}.connectionBanner .primary{white-space:nowrap}@media(max-width:640px){.connectionBanner{width:min(100% - 20px,1100px);align-items:flex-start;flex-wrap:wrap}.connectionBanner .primary{width:100%}}.roleAuthCard{width:min(760px,calc(100vw - 28px))}.signupRoleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.signupRoleCard{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #dbe4e8;border-radius:16px;background:#fff;text-align:left;cursor:pointer;transition:.18s ease}.signupRoleCard:hover{transform:translateY(-1px);box-shadow:0 8px 22px #2c688414}.signupRoleCard.selected{border-color:#2c6884;background:#eef7fb;box-shadow:0 0 0 2px #2c68841a}.signupRoleIcon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf4f8;color:#2c6884;flex:0 0 auto}.signupRoleCard.selected .signupRoleIcon{background:#2c6884;color:#fff}.signupRoleCard b{display:block;color:#17394a}.signupRoleCard small{display:block;margin-top:4px;color:#667781;line-height:1.35}.authTerms{margin-top:16px}.onboardingCard{width:min(620px,calc(100vw - 28px))}.onboardingRoleBanner{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:18px 0;border:1px solid #dbe7ec;border-radius:14px;background:#f6fbfd}.onboardingRoleBanner>span{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#2c6884;color:#fff}.onboardingRoleBanner>div{display:flex;flex-direction:column;flex:1}.onboardingRoleBanner small{font-size:.67rem;letter-spacing:.08em;color:#74838b;font-weight:800}.onboardingRoleBanner b{color:#17394a}.linkBtn.compact{width:auto;margin:0}.onboardingRoles{margin:-8px 0 18px;grid-template-columns:repeat(2,minmax(0,1fr))}.onboardingRoles button{min-height:56px;flex-direction:row;justify-content:flex-start;padding:0 12px}.schoolAdminApp{min-height:100dvh;background:#f6f8fb;display:grid;grid-template-columns:260px minmax(0,1fr);color:#17212b}.schoolAdminSide{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;background:#123b5d;color:#fff;padding:max(14px,env(safe-area-inset-top)) 12px max(14px,env(safe-area-inset-bottom));z-index:70}.schoolAdminBrand{display:flex;align-items:center;gap:10px;padding:4px 8px 16px}.schoolAdminBrand svg{flex:0 0 auto}.schoolAdminBrand>div{display:flex;flex-direction:column}.schoolAdminBrand b{font-size:1.05rem}.schoolAdminBrand small{opacity:.72}.adminNavClose{display:none;margin-left:auto;background:transparent;border:0;color:#fff}.schoolAdminSchool{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff12;margin-bottom:16px}.schoolAdminSchool>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ffffff1f}.schoolAdminSchool>div{min-width:0;display:flex;flex-direction:column}.schoolAdminSchool b,.schoolAdminSchool small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schoolAdminSchool small{opacity:.7}.schoolAdminSide nav{display:grid;gap:6px}.schoolAdminSide nav button,.schoolAdminSideFoot button{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:#ffffffd1;font-weight:700;text-align:left;cursor:pointer}.schoolAdminSide nav button:hover,.schoolAdminSide nav button.active{background:#ffffff1f;color:#fff}.schoolAdminSideFoot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}.schoolAdminBody{min-width:0}.schoolAdminTop{position:sticky;top:0;z-index:45;display:flex;align-items:center;gap:14px;min-height:72px;padding:max(12px,env(safe-area-inset-top)) 24px 12px;background:#fffffff5;border-bottom:1px solid #e4eaed;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.schoolAdminTop .hamb{display:none}.schoolAdminTop h1{font-size:1.05rem;margin:0}.schoolAdminTop p{margin:2px 0 0;color:#6c7a83;font-size:.82rem}.adminBadge{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:#eef7fb;color:#2c6884;font-weight:800;font-size:.78rem}.schoolAdminMain{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:26px 0 96px}.adminWelcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:22px;background:linear-gradient(135deg,#123b5d,#2c6884);color:#fff;box-shadow:0 16px 36px #123b5d2e}.adminWelcome h2{font-size:clamp(1.6rem,3vw,2.4rem);margin:8px 0}.adminWelcome p{margin:0;max-width:680px;color:#fffc}.adminWelcome .eyebrow{color:#fff}.adminWelcome .primary{background:#fff;color:#123b5d}.adminStats{margin-top:16px}.stat.interactive{border:0;text-align:left;cursor:pointer;width:100%}.adminChecklist{margin-top:16px}.checklistGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.checklistGrid button{display:flex;align-items:flex-start;gap:11px;padding:16px;border:1px solid #e0e7ea;border-radius:15px;background:#fff;text-align:left;cursor:pointer}.checklistGrid button:hover{border-color:#73aeca;box-shadow:0 8px 20px #2c688414}.checklistGrid button>span{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eef5f7;color:#2c6884;flex:0 0 auto}.checklistGrid button>span.done{background:#e9f7f2;color:#2e7d6e}.checklistGrid b{display:block}.checklistGrid small{display:block;margin-top:4px;color:#718089}.sectionIntro{margin-bottom:16px}.sectionIntro h2{margin:0 0 5px}.sectionIntro p{margin:0;color:#687983}.accessCodeCard{position:relative;overflow:hidden}.accessCodeCard .cardIcon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eef7fb;color:#2c6884;margin-bottom:12px}.roleExplainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.roleExplainer>div{padding:16px;border:1px solid #e1e7ea;border-radius:15px;background:#fbfcfd}.roleExplainer svg{color:#2c6884}.roleExplainer b{display:block;margin:8px 0 4px}.roleExplainer p{margin:0;color:#6c7a83;font-size:.86rem}.schoolAdminBottomNav{display:none}@media(max-width:900px){.schoolAdminApp{grid-template-columns:1fr}.schoolAdminSide{position:fixed;left:0;top:0;bottom:0;width:min(86vw,290px);height:100dvh;transform:translate(-105%);transition:transform .2s ease;box-shadow:20px 0 44px #0003}.schoolAdminSide.open{transform:translate(0)}.adminNavClose{display:grid;place-items:center}.schoolAdminTop .hamb{display:grid}.schoolAdminMain{width:min(100% - 24px,1180px)}.checklistGrid,.roleExplainer{grid-template-columns:1fr}.adminWelcome{align-items:flex-start;flex-direction:column}.adminWelcome .primary{width:100%}.schoolAdminBottomNav{position:fixed;z-index:60;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#fffffffa;border-top:1px solid #dfe6e9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.schoolAdminBottomNav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;border:0;background:transparent;color:#6f7e87;font-size:.67rem;font-weight:700}.schoolAdminBottomNav button.active{color:#2c6884}.schoolAdminBottomNav button.active svg{transform:translateY(-1px)}}@media(max-width:640px){.roleAuthCard{width:min(100% - 20px,760px)}.signupRoleGrid{grid-template-columns:1fr}.signupRoleCard{padding:12px}.onboardingRoles{grid-template-columns:1fr}.schoolAdminTop{padding-left:12px;padding-right:12px}.adminBadge{display:none}.schoolAdminMain{padding-top:16px}.adminWelcome{padding:20px}.adminStats{grid-template-columns:repeat(2,minmax(0,1fr))}.roleExplainer{grid-template-columns:1fr}.schoolAdminBottomNav span{font-size:.63rem}}@media(max-width:640px){.selfPortal{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.selfTabs{position:fixed!important;left:0;right:0;top:auto!important;bottom:0;z-index:65;display:grid!important;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:7px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid #dde5e9;border-bottom:0;background:#fffffffa;box-shadow:0 -10px 28px #123b5d14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:visible!important}.selfTabs button{min-width:0!important;min-height:50px!important;padding:5px 7px!important;border:0!important;border-radius:12px!important;background:transparent!important;display:flex!important;flex-direction:column;justify-content:center;gap:3px!important;color:#73818a!important;font-size:.68rem}.selfTabs button.active{background:#eef7fb!important;color:#2c6884!important}.selfTabs button svg{width:20px;height:20px}.selfPortalMain{padding-bottom:20px}.selfPortalDismissal{padding-bottom:0}.selfPortalHeader{position:sticky;top:0;z-index:50}.receiptStrip{margin-bottom:10px}}.selfMenuButton,.selfMenuDrawer,.selfMenuBackdrop{display:none}@media(max-width:640px){.selfPortalHeader{display:grid!important;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:9px!important}.selfMenuButton{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #dbe5ea;border-radius:12px;background:#fff;color:#2c6884;box-shadow:0 5px 14px #123b5d12;cursor:pointer}.selfMenuButton svg{width:22px;height:22px}.selfPortalHeader .lpBrand{min-width:38px}.selfPortalHeader .selfIdentity{min-width:0}.selfPortalHeader .selfHeaderSignOut{font-size:0;min-width:44px;width:44px;padding:0}.selfPortalHeader .selfHeaderSignOut svg{width:18px;height:18px}.selfMenuBackdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:79;border:0;background:#07161f6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.selfMenuDrawer{display:flex;position:fixed;left:0;top:0;bottom:0;z-index:80;width:min(86vw,320px);height:100dvh;flex-direction:column;padding:calc(16px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom));background:#123b5d;color:#fff;transform:translate(-105%);transition:transform .2s ease;box-shadow:18px 0 44px #0000003d}.selfMenuDrawer.open{transform:translate(0)}.selfMenuDrawerHead{display:flex;align-items:center;gap:10px;padding:0 4px 16px;border-bottom:1px solid rgba(255,255,255,.12)}.selfMenuDrawerHead .lpBrand{font-size:1rem!important;color:#fff!important;flex:1}.selfMenuClose{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:11px;background:#ffffff1a;color:#fff}.selfMenuAccount{display:flex;flex-direction:column;gap:3px;margin:14px 4px;padding:12px 13px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:#ffffff12;min-width:0}.selfMenuAccount b,.selfMenuAccount small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selfMenuAccount small{color:#ffffffa8}.selfMenuDrawer nav{display:grid;gap:7px}.selfMenuDrawer nav button,.selfMenuSignOut{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;padding:0 13px;border:0;border-radius:12px;background:transparent;color:#fffc;font-weight:800;text-align:left}.selfMenuDrawer nav button.active{background:#ffffff21;color:#fff}.selfMenuDrawer nav button svg,.selfMenuSignOut svg{flex:0 0 auto}.selfMenuSignOut{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);border-radius:0;padding-top:14px;color:#fff}.selfPortalDismissal>.app>main>header .hamb{display:none!important}.selfPortalDismissal>.app>aside.open{z-index:82!important}}@media(max-width:800px){.queueRow>.grow,.groupHead .grow,.alertRow .grow,.identity>div,.child>div{flex:1 1 180px!important;min-width:min(180px,100%)!important;overflow-wrap:normal!important;word-break:normal!important;-webkit-hyphens:none!important;hyphens:none!important}.queueRow b,.queueRow small,.groupHead b,.groupHead small,.alertRow b,.alertRow small{overflow-wrap:break-word!important;word-break:normal!important}.queueRow>.actions{flex:1 1 100%!important;width:100%!important;justify-content:flex-end!important}.queueRow>.actions>*{min-width:112px}.queueRow>.status{flex:0 0 auto!important;white-space:nowrap!important}.queueRow>.photoUploader{flex:1 1 100%!important;width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 12px;padding-bottom:2px}.queueRow>.photoUploader .identityPhoto{grid-column:1;grid-row:1}.queueRow>.photoUploader .photoPick{grid-column:2;grid-row:1;min-width:0;justify-self:start;white-space:nowrap}.queueRow>.photoUploader>.secondary{grid-column:3;grid-row:1;margin:0;white-space:nowrap}.queueRow>.photoUploader .photoError{grid-column:1/-1;grid-row:2;width:100%}}@media(max-width:430px){.queueRow{gap:10px 12px!important}.queueRow>.grow{flex-basis:100%!important;min-width:100%!important}.queueRow>.status{margin-left:0!important}.queueRow>.actions{display:grid!important;grid-template-columns:1fr!important}.queueRow>.actions>*{width:100%!important;min-width:0!important}.queueRow>.photoUploader{grid-template-columns:auto minmax(0,1fr) auto}.queueRow>.photoUploader .photoPick{font-size:.78rem}.queueRow>.photoUploader>.secondary{padding-inline:12px}}@media(max-width:640px){.familyAccount .queueRow{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center!important;gap:10px 12px!important;padding:16px!important}.familyAccount .queueRow>.photoUploader{grid-column:1/-1!important;width:100%!important;margin-bottom:2px}.familyAccount .queueRow>.identityPhoto{grid-column:1;grid-row:auto}.familyAccount .queueRow>.grow{grid-column:2!important;min-width:0!important;width:auto!important;flex:none!important}.familyAccount .queueRow>.status{grid-column:3!important;justify-self:end;margin:0!important}.familyAccount .queueRow>button.secondary{grid-column:1/-1!important;width:100%!important;margin:2px 0 0!important;min-height:46px}.familyAccount .queueRow b{font-size:1rem!important;line-height:1.25}.familyAccount .queueRow small{display:block;font-size:.84rem!important;line-height:1.45;margin-top:3px}}@media(max-width:390px){.familyAccount .queueRow{grid-template-columns:auto minmax(0,1fr)}.familyAccount .queueRow>.status{grid-column:2!important;justify-self:start}.familyAccount .queueRow>.grow{grid-column:2!important}.familyAccount .queueRow>button.secondary{grid-column:1/-1!important}}@media(max-width:800px){.selfPortalDismissal>.app>aside{top:0;bottom:0;left:0;height:100dvh;overflow-y:auto;overscroll-behavior:contain;z-index:82}}@media(max-width:640px){.selfPortalDismissal>.app>main>header .hamb{display:grid!important;place-items:center}}.arrivalGate,.pickupPresence,.schoolArrivalSetup{margin-bottom:18px}.arrivalGate.arrivalConfirmed{border-color:#258c5259;box-shadow:0 0 0 1px #258c5214}.arrivalMeta,.pickupVehicle{display:flex;align-items:center;gap:7px;color:#53636a;font-size:.9rem;margin:10px 0}.arrivalMapLink{margin-top:10px;text-decoration:none;justify-content:center}.pickupPresenceGrid{display:grid;gap:10px}.pickupPresenceCard{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #dde5e7;border-radius:16px;background:#fff}.activePickupPhoto{display:flex;border-radius:999px;padding:3px;box-shadow:0 0 0 3px #35a66b}.activePickupPhoto .identityPhoto{border-radius:999px}.pickupPresenceCard .grow{min-width:0}.pickupPresenceCard .grow small{display:block}.pickupPresenceCard .status{margin-left:auto;white-space:nowrap}.schoolArrivalSetup .secondary{margin-left:8px;text-decoration:none}.schoolArrivalSetup label{display:block;margin:10px 0}.schoolArrivalSetup select{width:100%}@media(max-width:700px){.pickupPresenceCard{align-items:flex-start;flex-wrap:wrap}.pickupPresenceCard .status{margin-left:0}.schoolArrivalSetup .secondary{margin:10px 0 0;width:100%}.schoolArrivalSetup .primary{width:100%}}.classroomRows{counter-reset:classroom-roster-row;min-width:0}.classroomRow{counter-increment:classroom-roster-row;min-width:0;width:100%;grid-template-columns:2rem 38px minmax(0,1fr) auto!important}.classroomRow:before{content:counter(classroom-roster-row) ".";grid-column:1;grid-row:1;min-width:0;width:2rem;text-align:right;font-weight:800;font-variant-numeric:tabular-nums;color:#2c6884;line-height:1.4}.classroomRow>.classroomStateIcon{grid-column:2;grid-row:1}.classroomRow>.grow{grid-column:3;grid-row:1;min-width:0}.classroomRow>.classroomStatus{grid-column:4;grid-row:1}.classroomRow.notConnected:before{color:#6b7280}@media(max-width:680px){.classroomRow{grid-template-columns:1.75rem 38px minmax(0,1fr)!important;grid-template-rows:auto auto;align-items:start}.classroomRow:before{grid-column:1;grid-row:1 / span 2;width:1.75rem;text-align:left}.classroomRow>.classroomStateIcon{grid-column:2;grid-row:1}.classroomRow>.grow{grid-column:3;grid-row:1;min-width:0;overflow-wrap:anywhere}.classroomRow>.classroomStatus{grid-column:3!important;grid-row:2;justify-self:start;max-width:100%}}@media(max-width:420px){.classroomRow{grid-template-columns:1.75rem 34px minmax(0,1fr)!important;gap:10px}}.launchReadiness{margin-top:18px}.launchReadiness .panelHead,.billingStatus .panelHead{align-items:flex-start}.launchReadinessGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px;margin-top:14px}.launchReadinessItem{display:flex;gap:11px;align-items:flex-start;padding:13px;border:1px solid #d7e4ea;border-radius:12px;background:#fff}.launchReadinessItem>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f5eee8;color:#9b5c26;flex:none}.launchReadinessItem.done>span{background:#e9f7ef;color:#26734d}.launchReadinessItem.info>span{background:#edf6fa;color:#2c6884}.launchReadinessItem b,.launchReadinessItem small{display:block}.launchReadinessItem small{margin-top:3px;color:#5f6e76;line-height:1.35}.launchReadinessBanner,.billingState{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:13px;margin-top:12px}.launchReadinessBanner.ready,.billingState.paid{background:#e9f7ef;color:#205b40;border:1px solid #bbdfc9}.launchReadinessBanner.pending,.billingState.attention{background:#fff6e9;color:#7c5427;border:1px solid #edd3aa}.launchReadinessBanner svg,.billingState>svg{flex:none;margin-top:1px}.launchReadinessBanner b,.launchReadinessBanner small{display:block}.launchReadinessBanner small{margin-top:3px}.billingState p{margin:3px 0}.billingState small{display:block;opacity:.85}.billingActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.paMembers{margin-top:12px;border-top:1px solid #4B7488;padding-top:12px}.paMember{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #4B7488;flex-wrap:wrap}.paMember:first-child{border-top:0}.paMember .grow{flex:1;min-width:180px}.paMember small{display:block;color:#b9d3de}.paNotice{background:#244f3b;border:1px solid #65a987;color:#d9f7e7;border-radius:11px;padding:10px 12px;margin:10px 0}.paClientError{border-top:1px solid #4B7488;padding:10px 0;display:grid;gap:3px}.paClientError small{color:#b9d3de;overflow-wrap:anywhere}@media(max-width:640px){.launchReadinessGrid{grid-template-columns:1fr}.billingActions>*{width:100%;justify-content:center}.paMember .paBtn{width:100%}}.vehiclePhoto{width:112px;height:72px;object-fit:cover;border-radius:12px;border:1px solid var(--k2p-border,#dce5e8);background:#f6f8f9;flex:0 0 auto}.vehicleUploader{align-items:flex-start;gap:10px}.vehicleUploader .vehiclePhoto{width:min(260px,100%);height:150px}.pickupIdentityRow{align-items:center}.pickupIdentityRow .pickupVehicle,.match .pickupVehicle{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:.82rem;color:var(--k2p-muted,#5d7078)}.receiptStamp{display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin-top:7px;padding:5px 9px;border-radius:999px;background:#edf7f2;color:#31735f;font-size:.82rem;font-weight:800;line-height:1.25}.receiptStamp svg{flex:0 0 auto}.exceptionTrigger{gap:6px;white-space:nowrap}.pickupPresenceCard .vehiclePhoto{width:104px;height:68px}@media(max-width:640px){.pickupIdentityRow .vehiclePhoto,.pickupPresenceCard .vehiclePhoto{width:88px;height:60px}.pickupIdentityRow>.actions{justify-content:stretch!important}.pickupIdentityRow>.actions button{flex:1 1 auto}.exceptionTrigger{min-height:44px;justify-content:center}.match .identity{flex-wrap:wrap}.match .identity .vehiclePhoto{width:100%;height:150px}.receiptStamp{white-space:normal}}.studentRookieCard{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--border,#d8e0e3) 72%,#e98a31 28%);border-radius:26px;background:linear-gradient(145deg,#fffffffa,#faf9f5f7);box-shadow:0 24px 70px #19364421;isolation:isolate;animation:rookieCardIn .52s cubic-bezier(.2,.72,.25,1) both;transform-origin:50% 70%}.studentRookieCard+.studentRookieCard{margin-top:20px}.rookieCardGlint{position:absolute;top:-45%;right:-45%;bottom:-45%;left:-45%;z-index:-1;background:linear-gradient(110deg,transparent 35%,rgba(115,174,202,.08) 43%,rgba(233,138,49,.12) 49%,rgba(255,255,255,.48) 52%,transparent 60%);transform:translate(-28%) rotate(4deg);animation:rookieGlint 8s ease-in-out infinite}.rookieCardTopline{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 18px;background:linear-gradient(90deg,#214f65,#2c6884 58%,#356f86);color:#fff;letter-spacing:.12em;font-size:11px;font-weight:800}.rookieCardTopline>span:first-child{display:inline-flex;align-items:center;gap:7px}.rookieEdition{padding:5px 9px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#ffffff1a;white-space:nowrap}.rookieCardBody{display:grid;grid-template-columns:minmax(220px,.88fr) minmax(0,1.45fr);gap:0}.rookiePortrait{position:relative;padding:18px;background:linear-gradient(155deg,#2c68841c,#73aeca0b 50%,#e98a3114)}.rookiePhotoFrame{position:relative;min-height:310px;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#e7eef0,#f8f7f2);box-shadow:inset 0 0 0 1px #2c68841f}.rookiePhotoFrame .photoUploader{width:100%;height:100%;min-height:310px;display:flex;align-items:stretch;justify-content:flex-end;flex-direction:column;gap:0;position:relative}.rookiePhotoFrame .identityPhoto.sm{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0;object-fit:cover;font-size:54px}.rookiePhotoFrame .identityPhoto.fallback{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 28%,#dce8ed,#b9cdd6 68%,#a3bbc6);color:#214f65;font-weight:900}.rookiePhotoFrame .photoPick{position:relative;z-index:3;margin:0 12px 12px;align-self:flex-start;border-radius:999px;box-shadow:0 6px 18px #142d3a26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.rookiePhotoFrame .photoUploader>.secondary{position:relative;z-index:3;align-self:flex-start;margin:0 12px 12px}.rookieStatus{position:absolute;z-index:4;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;background:#ffffffe6;box-shadow:0 7px 22px #142d3a24;font-size:11px;font-weight:800;color:#244c5f;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.rookieStatus>span{width:8px;height:8px;border-radius:50%;background:#2f9461;box-shadow:0 0 0 4px #2f946121;animation:rookiePulse 2.4s ease-in-out infinite}.rookieIdentity{padding:17px 4px 2px}.rookieIdentity small,.rookieMetaGrid small,.rookieStudentNumber small,.rookieNotes small{display:block;color:#657980;font-size:10px;letter-spacing:.11em;font-weight:800}.rookieIdentity h3{margin:4px 0 0;font-size:clamp(23px,3vw,32px);line-height:1.02;letter-spacing:-.03em;color:#173d50}.rookieIdentity p{margin:5px 0 0;color:#607078;font-size:13px}.rookieDetails{padding:20px 20px 18px;display:flex;flex-direction:column;gap:14px}.rookieMetaGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rookieMetaGrid>div{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(44,104,132,.11);border-radius:15px;background:#ffffffb8;min-width:0;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.rookieMetaGrid>div:hover{transform:translateY(-2px);box-shadow:0 9px 22px #1e465a17;border-color:#2c688440}.rookieMetaGrid svg{width:18px;flex:0 0 auto;color:#2c6884}.rookieMetaGrid b{display:block;margin-top:2px;color:#244c5f;font-size:13px;overflow-wrap:anywhere}.rookieStudentNumber,.rookieNotes{padding:11px 13px;border-radius:14px;background:#e4b9881c;border:1px solid rgba(201,111,30,.12)}.rookieStudentNumber code{display:block;margin-top:3px;color:#7d4b1b;font-weight:800}.rookieNotes p{margin:4px 0 0;color:#596b73;font-size:13px;line-height:1.45}.rookieCardActions{display:flex;justify-content:flex-end;gap:9px;padding:12px 18px;border-top:1px solid rgba(44,104,132,.1);background:#ffffff8c}.rookieCardActions button{transition:transform .16s ease,box-shadow .16s ease}.rookieCardActions button:hover{transform:translateY(-1px)}.rookieCardActions button:active{transform:translateY(1px) scale(.985)}.vehicleVisual{position:relative;margin:0;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:13px;padding:12px;border-radius:18px;border:1px solid rgba(44,104,132,.12);background:linear-gradient(135deg,#ecf3f6cc,#ffffffe6);overflow:hidden;min-height:104px}.vehicleVisual.compact{grid-template-columns:96px minmax(0,1fr);padding:8px;min-height:72px}.vehicleStage{position:relative;height:82px;display:grid;place-items:center;z-index:2;transform-style:preserve-3d;animation:vehicleFloat 5.5s ease-in-out infinite}.vehicleVisual.compact .vehicleStage{height:58px}.vehicleStage img{display:block;max-width:100%;max-height:82px;object-fit:contain;filter:drop-shadow(0 11px 8px rgba(23,61,80,.17));animation:vehicleTilt 7s ease-in-out infinite}.vehicleVisual.compact .vehicleStage img{max-height:58px}.vehicleFallback{width:100%;height:100%;display:grid;place-items:center;color:#2c6884}.vehicleFallback svg{width:58px;height:58px;filter:drop-shadow(0 9px 7px rgba(23,61,80,.12))}.vehicleFallback span{font-size:10px;font-weight:800;letter-spacing:.08em}.vehicleOrbit{position:absolute;left:9px;top:10px;width:142px;height:78px;border-radius:50%;border:1px solid rgba(115,174,202,.28);transform:rotateX(66deg);animation:vehicleOrbitSpin 7s linear infinite}.vehicleOrbit:before,.vehicleOrbit span{content:"";position:absolute;border-radius:50%}.vehicleOrbit:before{top:8px;right:8px;bottom:8px;left:8px;border:1px dashed rgba(233,138,49,.22)}.vehicleOrbit span{width:7px;height:7px;background:#e98a31;left:50%;top:-4px;box-shadow:0 0 0 4px #e98a311f}.vehicleVisual.compact .vehicleOrbit{width:90px;height:54px}.vehicleVisual figcaption{position:relative;z-index:2;min-width:0}.vehicleVisual figcaption>strong{display:block;font-size:13px;color:#234d60}.vehicleVisual figcaption>small{display:block;margin-top:3px;color:#6b7c83;font-size:10.5px;line-height:1.35}.vehicleAttribution a{display:inline-flex;align-items:center;gap:3px;color:#2c6884;font-weight:800;text-decoration:none}.vehicleAttribution a:hover{text-decoration:underline}.vehicleAttribution span{display:block}.vehicleVisual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 50%,rgba(115,174,202,.13),transparent 36%);pointer-events:none}@keyframes rookieCardIn{0%{opacity:0;transform:translateY(15px) scale(.985)}to{opacity:1;transform:none}}@keyframes rookieGlint{0%,62%,to{transform:translate(-28%) rotate(4deg);opacity:.25}76%{transform:translate(30%) rotate(4deg);opacity:.72}}@keyframes rookiePulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.18);opacity:1}}@keyframes vehicleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes vehicleTilt{0%,to{transform:rotateY(-3deg) rotate(0)}50%{transform:rotateY(4deg) rotate(-.3deg)}}@keyframes vehicleOrbitSpin{to{transform:rotateX(66deg) rotate(360deg)}}@media(max-width:720px){.studentRookieCard{border-radius:21px}.rookieCardBody{grid-template-columns:1fr}.rookiePortrait{padding:13px}.rookiePhotoFrame,.rookiePhotoFrame .photoUploader{min-height:300px}.rookieDetails{padding:15px}.rookieMetaGrid{grid-template-columns:1fr 1fr}.vehicleVisual{grid-template-columns:124px minmax(0,1fr)}.vehicleOrbit{width:116px}.rookieCardTopline{padding:11px 13px;font-size:9.5px}.rookieEdition{padding:4px 7px}}@media(max-width:430px){.rookieMetaGrid{grid-template-columns:1fr}.vehicleVisual{grid-template-columns:105px minmax(0,1fr)}.rookiePhotoFrame,.rookiePhotoFrame .photoUploader{min-height:270px}}@media(prefers-reduced-motion:reduce){.studentRookieCard,.rookieCardGlint,.rookieStatus>span,.vehicleStage,.vehicleStage img,.vehicleOrbit{animation:none!important}.studentRookieCard *{scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--k2p-motion-fast:.16s;--k2p-motion-base:.26s;--k2p-motion-slow:.48s;--k2p-motion-ease:cubic-bezier(.2,.72,.25,1)}.panel,.hero,.authCard,.setupCard,.stat,.schoolAdminMain>section,.teacherClassroom>section,.familyAccount>section,.selfPortalMain>section,.paCard,.securityHero,.scannerBox,.match{animation:k2pSurfaceIn var(--k2p-motion-slow) var(--k2p-motion-ease) both}.panel:nth-of-type(2),.setupCard:nth-child(2),.stat:nth-child(2){animation-delay:45ms}.panel:nth-of-type(3),.setupCard:nth-child(3),.stat:nth-child(3){animation-delay:85ms}.panel:nth-of-type(4),.stat:nth-child(4){animation-delay:.12s}h1,h2,.hero h2,.adminWelcome h2,.onboardingCard>h1{animation:k2pTextReveal .42s var(--k2p-motion-ease) both}.formNotice,.formError,.alert,.connectionBanner,.billingState,.launchReadinessBanner{animation:k2pNoticeIn .3s var(--k2p-motion-ease) both}.modal,.selfMenuBackdrop{animation:k2pFadeIn var(--k2p-motion-fast) ease-out both}.modalCard,.selfMenuDrawer,.schoolMapCard{animation:k2pDialogIn .26s var(--k2p-motion-ease) both}button,.primary,.secondary,.paBtn,.linkBtn,.teacherCard,.studentCard,.schoolAdminUtility,.selfMenuUtility{transition:transform var(--k2p-motion-fast) ease,box-shadow var(--k2p-motion-fast) ease,opacity var(--k2p-motion-fast) ease,background-color var(--k2p-motion-fast) ease,border-color var(--k2p-motion-fast) ease}button:not(:disabled):hover,.primary:not(:disabled):hover,.secondary:not(:disabled):hover,.paBtn:not(:disabled):hover,.teacherCard:not(:disabled):hover,.studentCard:not(:disabled):hover{transform:translateY(-1px)}button:not(:disabled):active,.primary:not(:disabled):active,.secondary:not(:disabled):active,.paBtn:not(:disabled):active,.teacherCard:not(:disabled):active,.studentCard:not(:disabled):active{transform:translateY(1px) scale(.985)}button:disabled{cursor:not-allowed}.identityPhoto,.vehiclePhoto,.classroomStateIcon,.status,.adminBadge,.safe,.eyebrow{transition:transform var(--k2p-motion-base) var(--k2p-motion-ease),opacity var(--k2p-motion-base) ease}.queueRow:hover .identityPhoto,.classroomRow:hover .classroomStateIcon{transform:scale(1.035)}.spinner{animation-duration:.75s}@keyframes k2pSurfaceIn{0%{opacity:0;transform:translateY(10px) scale(.994)}to{opacity:1;transform:none}}@keyframes k2pTextReveal{0%{opacity:0;transform:translateY(7px);clip-path:inset(0 100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}@keyframes k2pNoticeIn{0%{opacity:0;transform:translateY(-5px) scale(.99)}to{opacity:1;transform:none}}@keyframes k2pFadeIn{0%{opacity:0}to{opacity:1}}@keyframes k2pDialogIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.studentRookieCard,.rookieCardGlint,.rookieStatus>span,.vehicleStage,.vehicleStage img,.vehicleOrbit{animation:none!important}}.scannerBatchChildren{margin:-4px 0 16px;padding:13px 14px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;display:grid;gap:10px}.scannerBatchChildren>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.scannerBatchChildren b{font-size:.92rem}.scannerBatchChildren span{font-size:.8rem;color:#667085}.scannerBatchButtons{display:flex;gap:8px;flex-wrap:wrap}.scannerBatchButtons button{min-height:40px;border:1px solid #b8c2d3;border-radius:10px;background:#fff;color:#243047;padding:8px 12px;font:inherit;font-size:.86rem;font-weight:750;cursor:pointer}.scannerBatchButtons button.active{background:#172554;color:#fff;border-color:#172554;box-shadow:0 0 0 3px #1725541f}.scannerHandoffActions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.scannerHandoffActions .exceptionTrigger{min-height:48px;border-color:#efb1b1;background:#fff7f7;color:#a11616}.scannerStatusPill.exception{background:#fee4e2;color:#b42318}@media(max-width:720px){.scannerBatchChildren>div:first-child{display:grid}.scannerHandoffActions{display:grid;grid-template-columns:1fr}.scannerHandoffActions .exceptionTrigger,.scannerHandoffActions .scannerConfirmButton{width:100%;justify-content:center}}
