:root{--admin-accent: #3b82f6;--admin-accent-press: #2563eb;--admin-ok: #16a34a;--admin-danger: #dc2626;--admin-row-hover: rgba(255, 255, 255, .04);--admin-nav-width: 15rem;--admin-topbar-height: 3.75rem;--admin-safe-top: env(safe-area-inset-top, 0px);--admin-safe-right: env(safe-area-inset-right, 0px);--admin-safe-bottom: env(safe-area-inset-bottom, 0px);--admin-safe-left: env(safe-area-inset-left, 0px);--admin-bottom-inset: var(--admin-safe-bottom);--admin-tabbar-height: 4.5rem}.admin-shell{--admin-current-topbar-height: var(--admin-topbar-height);min-height:100dvh;display:flex;flex-direction:column;background:var(--c-bg);color:var(--c-text);overflow-x:clip}.admin-topbar{height:var(--admin-topbar-height);flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.25rem;background:var(--c-bg-2);border-bottom:1px solid var(--c-line)}.admin-topbar.admin-topbar--menu-open{z-index:60}.admin-topbar__brand{display:flex;align-items:baseline;gap:.6rem;min-width:0}.admin-topbar__logo{display:block;height:1.75rem;width:auto;align-self:center;flex:0 0 auto}.admin-topbar__title{font-size:1.05rem;font-weight:700;letter-spacing:.01em}.admin-topbar__subtitle{font-size:.78rem;color:var(--c-text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-topbar__user{display:flex;align-items:center;gap:.9rem;min-width:0;position:relative}.admin-tenant-switcher{flex:0 1 14rem;min-width:8rem;margin-left:auto}.admin-tenant-switcher select{width:100%;min-height:2.25rem;border:1px solid var(--c-line);border-radius:10px;background:var(--c-surface);color:var(--c-text);font:inherit;font-size:.86rem;font-weight:600;padding:.42rem .65rem}.admin-tenant-switcher select:focus{outline:2px solid var(--admin-accent);outline-offset:2px}.admin-tenant-switcher select:disabled{opacity:.65}.admin-avatar{flex:0 0 auto;width:2.4rem;height:2.4rem;padding:0;border:1px solid var(--c-line);border-radius:50%;background:linear-gradient(135deg,var(--admin-accent),var(--admin-accent-press));color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.02em;cursor:pointer;display:flex;align-items:center;justify-content:center}.admin-avatar:hover{filter:brightness(1.08)}.admin-avatar:focus-visible{outline:2px solid var(--admin-accent);outline-offset:2px}.admin-usermenu__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;border:none;padding:0;background:transparent;cursor:default}.admin-usermenu{position:fixed;top:calc(var(--admin-current-topbar-height) + .4rem);right:max(1.25rem,var(--admin-safe-right));z-index:61;min-width:13rem;max-width:min(16rem,calc(100vw - 1.5rem));display:flex;flex-direction:column;gap:.1rem;padding:.4rem;background:var(--c-surface);border:1px solid var(--c-line);border-radius:12px;box-shadow:0 12px 30px #00000059;animation:admin-menu-in .14s ease}@keyframes admin-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.admin-usermenu__head{display:flex;flex-direction:column;gap:.1rem;padding:.5rem .6rem .6rem;margin-bottom:.3rem;border-bottom:1px solid var(--c-line)}.admin-usermenu__name{font-size:.92rem;font-weight:600;overflow-wrap:anywhere}.admin-usermenu__email{font-size:.78rem;color:var(--c-text-dim);overflow-wrap:anywhere}.admin-usermenu__item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.6rem;border:none;border-radius:8px;background:transparent;color:var(--c-text);font:inherit;font-size:.92rem;text-align:left;text-decoration:none;cursor:pointer}.admin-usermenu__item:hover,.admin-usermenu__item.is-active{background:var(--admin-row-hover)}.admin-usermenu__item:focus-visible{outline:2px solid var(--admin-accent);outline-offset:-2px}.admin-usermenu__item svg{flex:0 0 auto;color:var(--c-text-dim)}.admin-usermenu__item--logout,.admin-usermenu__item--logout svg{color:#fca5a5}.admin-topbar__identity{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;min-width:0}.admin-topbar__name{font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.admin-topbar__email{font-size:.74rem;color:var(--c-text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.admin-body{flex:1 1 auto;display:flex;min-height:0}.admin-nav{flex:0 0 var(--admin-nav-width);display:flex;flex-direction:column;gap:.15rem;padding:1rem .75rem;background:var(--c-bg-2);border-right:1px solid var(--c-line)}.admin-nav__link{display:block;padding:.6rem .8rem;border-radius:10px;color:var(--c-text-dim);text-decoration:none;font-size:.92rem;font-weight:500;transition:background .12s ease,color .12s ease}.admin-nav__link:hover{background:var(--admin-row-hover);color:var(--c-text)}.admin-nav__link.is-active{background:var(--c-surface);color:var(--c-text);font-weight:600}.admin-main{flex:1 1 auto;min-width:0;padding:1.5rem 1.75rem;overflow-y:auto}.admin-page{display:flex;flex-direction:column;gap:1.25rem;max-width:72rem}.admin-page__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-page__title{font-size:1.5rem;font-weight:700;margin:0}.admin-page__actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.25rem 1.4rem}.admin-shell .overlay{z-index:70;padding:calc(1.4rem + var(--admin-safe-top)) 1.4rem calc(1.4rem + var(--admin-safe-bottom))}.admin-card--placeholder{display:flex;align-items:center;justify-content:center;min-height:9rem}.admin-placeholder{margin:0;color:var(--c-text-dim);font-size:1rem}.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1rem}.admin-stat{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.3rem}.admin-stat__value{font-size:1.9rem;font-weight:700;line-height:1}.admin-stat__label{font-size:.82rem;color:var(--c-text-dim)}.dashboard-page-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:nowrap}.dashboard-page-header .admin-page__title{min-width:0}.dashboard-presence-title{margin:0 0 .75rem}.dashboard-map-link{flex:0 0 auto;border-color:#14b8a673;background:linear-gradient(135deg,#3b82f6,#14b8a6);color:#fff;box-shadow:0 .9rem 1.8rem #14b8a629;padding:.44rem .72rem;border-radius:9px;font-size:.82rem;line-height:1;white-space:nowrap}.dashboard-map-link svg{width:1rem;height:1rem}.dashboard-map-link:hover:not(:disabled){filter:none;transform:translateY(-1px);box-shadow:0 1rem 2rem #14b8a638}.dashboard-recognition{display:grid;gap:1rem}.dashboard-recognition__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dashboard-recognition__subline{margin:.2rem 0 0;color:var(--c-text-dim);font-size:.82rem}.dashboard-recognition__loading{display:inline-flex;margin-left:.45rem;color:var(--admin-accent);font-size:.76rem;font-weight:650}.dashboard-recognition__controls{display:grid;gap:.65rem}.dashboard-recognition__preset-list,.dashboard-recognition__custom{display:flex;align-items:end;flex-wrap:wrap;gap:.45rem;min-width:0}.dashboard-recognition__preset{min-height:2rem;padding-inline:.72rem;border-color:#94a3b847;background:#ffffff0a;white-space:nowrap}.dashboard-recognition__preset--active{border-color:#3b82f6b8;background:#3b82f633;color:#dbeafe}.dashboard-recognition__date-field{width:min(9.8rem,100%);min-width:0;gap:.25rem}.dashboard-recognition__date-field>span{color:var(--c-text-dim);font-size:.72rem}.dashboard-recognition__date-field input{box-sizing:border-box;min-width:0;min-height:2rem;padding:.38rem .5rem;border-radius:8px;font-size:.82rem;line-height:1.15}.dashboard-recognition__apply{min-height:2rem;white-space:nowrap}.dashboard-recognition__range-error{margin:0;color:#fca5a5;font-size:.78rem}.dashboard-timeline{display:grid;gap:.75rem;min-width:0;padding:.9rem;border:1px solid rgba(59,130,246,.18);border-radius:.9rem;background:radial-gradient(circle at 20% 0%,rgba(20,184,166,.13),transparent 32%),linear-gradient(180deg,#0f172a6b,#0f172a24)}.dashboard-timeline--empty{min-height:8rem;place-items:center}.dashboard-timeline__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;min-width:0}.dashboard-timeline__title{margin:0;color:var(--c-text);font-size:.94rem}.dashboard-timeline__subtitle{margin:.18rem 0 0;color:var(--c-text-dim);font-size:.78rem}.dashboard-timeline__legend{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.42rem .75rem;color:var(--c-text-dim);font-size:.72rem;font-weight:650}.dashboard-timeline__legend span{display:inline-flex;align-items:center;gap:.32rem;white-space:nowrap}.dashboard-timeline__key{width:.68rem;height:.68rem;border-radius:3px}.dashboard-timeline__key--ok{background:linear-gradient(180deg,#34d399,#0f766e)}.dashboard-timeline__key--error{background:linear-gradient(180deg,#fb7185,#f97316)}.dashboard-timeline__line-key{width:1.2rem;height:0;border-top:2px solid #60a5fa;box-shadow:0 0 0 1px #0f172ad9}.dashboard-timeline__plot{position:relative;min-height:15.5rem;padding:.75rem 2.65rem 2rem 2.35rem;border:1px solid rgba(148,163,184,.12);border-radius:.75rem;background:#02061738;overflow:hidden}.dashboard-timeline__scale{position:absolute;top:.72rem;bottom:2rem;z-index:4;display:flex;flex-direction:column;justify-content:space-between;color:#cbd5e1b8;font-size:.68rem;font-variant-numeric:tabular-nums;pointer-events:none}.dashboard-timeline__scale--left{left:.55rem;align-items:flex-start}.dashboard-timeline__scale--right{right:.5rem;align-items:flex-end;color:#93c5fdc7}.dashboard-timeline__grid,.dashboard-timeline__bars,.dashboard-timeline__rate{position:absolute;top:.78rem;right:2.65rem;bottom:2rem;left:2.35rem}.dashboard-timeline__grid{z-index:1;pointer-events:none}.dashboard-timeline__grid span{position:absolute;left:0;width:100%;border-top:1px dashed rgba(148,163,184,.24)}.dashboard-timeline__grid span:nth-child(1){top:0}.dashboard-timeline__grid span:nth-child(2){top:50%}.dashboard-timeline__grid span:nth-child(3){top:100%}.dashboard-timeline__bars{z-index:2;display:grid;align-items:end;gap:clamp(2px,.42vw,6px)}.dashboard-timeline__bucket{display:flex;flex-direction:column;justify-content:flex-end;min-width:0;height:100%;padding:0;border:0;border-radius:6px 6px 2px 2px;background:transparent;color:inherit;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:background .15s ease,box-shadow .15s ease}.dashboard-timeline__bucket:hover .dashboard-timeline__bar,.dashboard-timeline__bucket:focus-visible .dashboard-timeline__bar{filter:brightness(1.22)}.dashboard-timeline__bucket--selected{background:linear-gradient(180deg,#60a5fa24,#60a5fa0a);box-shadow:inset 0 0 0 1px #93c5fd57}.dashboard-timeline__bucket--selected .dashboard-timeline__bar{filter:brightness(1.18) saturate(1.08)}.dashboard-timeline__bucket:focus-visible{box-shadow:0 0 0 2px #60a5fad9}.dashboard-timeline__bar{display:block;width:100%;min-width:2px;transition:filter .15s ease,opacity .15s ease}.dashboard-timeline__bar--error{border-radius:6px 6px 0 0;background:linear-gradient(180deg,#fb7185,#f97316);box-shadow:0 -.35rem 1.2rem #f8717124}.dashboard-timeline__bar--ok{border-radius:0 0 2px 2px;background:linear-gradient(180deg,#34d399,#0f766e)}.dashboard-timeline__rate{z-index:3;display:block;overflow:visible;pointer-events:none}.dashboard-timeline__rate-line{fill:none;stroke:#60a5fa;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(2,6,23,.75))}.dashboard-timeline__rate-point{fill:#0f172a;stroke:#93c5fd;stroke-width:2}.dashboard-timeline__rate-point--selected{fill:#dbeafe;stroke:#2563eb;stroke-width:2.4;filter:drop-shadow(0 0 5px rgba(96,165,250,.65))}.dashboard-timeline__x-ticks{position:absolute;right:2.65rem;bottom:.62rem;left:2.35rem;color:#cbd5e1ad;font-size:.66rem;font-variant-numeric:tabular-nums;pointer-events:none}.dashboard-timeline__x-ticks span{position:absolute;left:var(--dashboard-timeline-x);transform:translate(-50%);white-space:nowrap}.dashboard-timeline__detail{display:grid;grid-template-columns:minmax(10rem,1.35fr) repeat(4,minmax(4.1rem,.65fr));gap:.48rem;min-width:0}.dashboard-timeline__detail>div{display:grid;gap:.18rem;min-width:0;padding:.55rem .62rem;border:1px solid rgba(148,163,184,.14);border-radius:.55rem;background:#02061733}.dashboard-timeline__detail span{color:var(--c-text-dim);font-size:.65rem;font-weight:700;line-height:1.1}.dashboard-timeline__detail strong{min-width:0;color:var(--c-text);font-size:.84rem;font-variant-numeric:tabular-nums;line-height:1.14;overflow-wrap:anywhere}.dashboard-recognition__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dashboard-recognition__metric{display:flex;flex-direction:column;gap:.22rem;min-width:0;padding:.8rem .9rem;border:1px solid rgba(34,197,94,.28);border-radius:.65rem;background:#22c55e17}.dashboard-recognition__metric--error{border-color:#f871714d;background:#f8717114}.dashboard-recognition__metric--link{color:inherit;text-decoration:none;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.dashboard-recognition__metric--link:hover{border-color:#f871717a;background:#f871711f;transform:translateY(-1px)}.dashboard-recognition__metric--link:focus-visible,.dashboard-recognition__item-link:focus-visible{outline:2px solid rgba(96,165,250,.85);outline-offset:2px}.dashboard-recognition__value{font-size:1.5rem;font-weight:780;line-height:1}.dashboard-recognition__label{color:var(--c-text-dim);font-size:.78rem}.dashboard-recognition__breakdown{display:grid;gap:.55rem}.dashboard-recognition__breakdown-title{margin:0;color:var(--c-text);font-size:.9rem}.dashboard-recognition__list{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.dashboard-recognition__item{display:grid;grid-template-columns:minmax(7rem,1fr) auto minmax(4rem,8rem) auto;align-items:center;gap:.55rem;min-width:0}.dashboard-recognition__item-link{color:inherit;text-decoration:none;border-radius:8px;padding:.16rem .2rem;margin:-.16rem -.2rem;transition:background .15s ease}.dashboard-recognition__item-link:hover{background:#ffffff0d}.dashboard-recognition__item-label{min-width:0;overflow-wrap:anywhere;font-size:.84rem}.dashboard-recognition__item-count,.dashboard-recognition__pct{color:var(--c-text-dim);font-size:.78rem;font-variant-numeric:tabular-nums}.dashboard-recognition__bar{height:.45rem;overflow:hidden;border-radius:999px;background:#ffffff14}.dashboard-recognition__bar-fill{display:block;width:var(--dashboard-recognition-pct);height:100%;border-radius:inherit;background:linear-gradient(90deg,#f97316,#ef4444)}.dashboard-presence-since{display:inline-flex;align-items:center;justify-content:flex-end;gap:.35rem;min-width:0;flex-wrap:wrap}.admin-cobertura-badge,.dashboard-presence-cobertura{display:inline-flex;align-items:center;min-height:1.25rem;padding:.08rem .38rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0a;color:var(--c-text);font-size:.68rem;font-weight:750;line-height:1;white-space:nowrap}.admin-cobertura-badge--12h,.dashboard-presence-cobertura--12h{border-color:#22c55e75;background:#22c55e24;color:#bbf7d0}.admin-cobertura-badge--24h,.dashboard-presence-cobertura--24h{border-color:#f59e0b80;background:#f59e0b26;color:#fde68a}.admin-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--c-line);border-radius:var(--radius);background:var(--c-surface)}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table thead th{text-align:left;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-dim);padding:.75rem 1rem;border-bottom:1px solid var(--c-line);white-space:nowrap}.admin-table tbody td{padding:.7rem 1rem;border-bottom:1px solid var(--c-line);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--admin-row-hover)}.admin-table__empty{padding:2rem 1rem;text-align:center;color:var(--c-text-dim)}.admin-user-list__summary{display:none}.admin-user-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.admin-user-list .admin-badge+.admin-badge{margin-left:.35rem}.admin-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;border:1px solid var(--c-line);color:var(--c-text-dim);background:#ffffff08;white-space:nowrap}.admin-badge--ok{color:#bbf7d0;border-color:#22c55e59;background:#22c55e1f}.admin-badge--off{color:#fecaca;border-color:#dc262659;background:#dc26261f}.admin-delivery-cell{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.28rem;min-width:12rem;max-width:22rem}.admin-delivery-cell__detail{color:var(--c-text-dim);font-size:.76rem;line-height:1.25;white-space:normal}.admin-identity-cell{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.22rem;min-width:10rem;max-width:18rem}.admin-identity-cell__primary{color:var(--c-text);font-weight:650;line-height:1.2}.admin-identity-cell__detail{color:var(--c-text-dim);font-size:.76rem;line-height:1.25;white-space:normal}.admin-identity-cell--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0;text-align:left}.admin-identity-cell--button:hover .admin-identity-cell__primary,.admin-report-identity-summary--button:hover .admin-compact-title{color:var(--admin-accent);text-decoration:underline;text-underline-offset:.16em}.admin-identity-cell--button:focus-visible,.admin-report-identity-summary--button:focus-visible{outline:2px solid var(--admin-accent);outline-offset:3px;border-radius:.35rem}.admin-report-identity-summary{display:flex;min-width:0;flex-direction:column;gap:.18rem;align-items:flex-start}.admin-report-identity-summary--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0;text-align:left}.admin-report-action-cell{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.admin-report-photo-preview{width:5.35rem;aspect-ratio:1 / 1;flex:0 0 5.35rem;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:.55rem;background:linear-gradient(145deg,#0f172a80,#1e293bd1),var(--c-bg);color:var(--c-text-dim);font:inherit;font-size:.66rem;font-weight:700;line-height:1.1;text-align:center}.admin-report-photo-preview--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;cursor:pointer;box-shadow:inset 0 1px #ffffff0a}.admin-report-photo-preview--button:focus-visible{outline:2px solid var(--admin-accent);outline-offset:3px}.admin-report-photo-preview img{width:100%;height:100%;display:block;object-fit:cover}.admin-report-photo-preview--empty{padding:.4rem;border-style:dashed;background:#ffffff06}.admin-offline-approvals-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:1rem;align-items:start}.admin-detail-list{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:.45rem .8rem;margin:0 0 1rem}.admin-detail-list dt{color:var(--c-text-dim);font-size:.78rem}.admin-detail-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.admin-report-photo-preview__spinner{width:1rem;height:1rem}.admin-employee-detail-modal{width:min(46rem,calc(100vw - 2rem));max-height:min(86dvh,48rem);display:flex;flex-direction:column;gap:.9rem;overflow:auto}.admin-employee-detail-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.admin-employee-detail-modal__header .admin-auth__subtitle{margin-bottom:0}.admin-employee-detail-modal__loading{min-height:12rem}.admin-employee-detail-modal__body{display:grid;grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);gap:1rem;align-items:start}.admin-employee-detail-modal__photo{min-width:0}.admin-employee-detail-modal__photo img,.admin-employee-detail-modal__photo-placeholder,.admin-employee-detail-modal__photo-loading{width:100%;aspect-ratio:4 / 5;border:1px solid var(--c-line);border-radius:.55rem;background:var(--c-bg)}.admin-employee-detail-modal__photo img{display:block;object-fit:contain}.admin-employee-detail-modal__photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;padding:1rem;color:var(--c-text-dim);text-align:center}.admin-employee-detail-modal__photo-placeholder span{display:inline-flex;width:4.2rem;height:4.2rem;align-items:center;justify-content:center;border:1px solid var(--c-line);border-radius:999px;color:var(--c-text);background:#ffffff0a;font-size:1.35rem;font-weight:750}.admin-employee-detail-modal__photo-placeholder small{max-width:12rem;font-size:.78rem;line-height:1.3}.admin-employee-detail-modal__photo-placeholder--error{color:#fecaca;border-color:#dc262659}.admin-employee-detail-modal__photo-loading{min-height:0}.admin-employee-detail-modal__details{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.58rem .9rem;margin:0;align-items:baseline}.admin-employee-detail-modal__details dt{color:var(--c-text-dim);font-size:.78rem;font-weight:650}.admin-employee-detail-modal__details dd{min-width:0;margin:0;overflow-wrap:anywhere}.admin-audit-image-modal{width:min(46rem,calc(100vw - 2rem));max-height:min(86dvh,48rem);display:flex;flex-direction:column;gap:.9rem;overflow:hidden}.admin-audit-image-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.admin-audit-image-modal__header .admin-auth__subtitle{margin-bottom:0}.admin-audit-image-modal__loading{min-height:16rem}.admin-audit-image-modal__image{width:100%;max-height:min(64dvh,36rem);border:1px solid var(--c-line);border-radius:.5rem;background:var(--c-bg);object-fit:contain}.admin-audit-image-modal__details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:0}.admin-audit-image-modal__details div{min-width:0;padding:.5rem .55rem;border:1px solid rgba(148,163,184,.2);border-radius:.5rem;background:#ffffff06}.admin-audit-image-modal__details dt{margin-bottom:.18rem;color:var(--c-text-dim);font-size:.68rem;font-weight:700}.admin-audit-image-modal__details dd{min-width:0;margin:0;overflow-wrap:anywhere;font-size:.78rem;font-weight:650}.admin-session-diagnostics{display:flex;flex-direction:column;gap:.6rem;margin:0 0 .85rem;padding:.72rem .8rem;border:1px solid var(--c-line);border-radius:.5rem;background:#ffffff06}.admin-session-diagnostics__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.admin-session-diagnostics__title{margin:0;color:var(--c-text);font-size:.9rem;font-weight:700;letter-spacing:0}.admin-session-diagnostics__count{color:var(--c-text-dim);font-size:.76rem;font-weight:650;white-space:nowrap}.admin-session-diagnostics__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.5rem}.admin-session-diagnostic{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;min-width:0;padding:.55rem .6rem;border:1px solid rgba(255,255,255,.06);border-radius:.5rem;background:#0000001a}.admin-session-diagnostic__main{display:flex;min-width:0;flex-direction:column;gap:.15rem}.admin-session-diagnostic__title{min-width:0;overflow-wrap:anywhere;color:var(--c-text);font-size:.84rem;font-weight:700;line-height:1.2}.admin-session-diagnostic__detail{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.74rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.admin-session-diagnostic__signals{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:.3rem}.admin-report-filter__field--full{grid-column:1 / -1}.admin-report-filter__field--status,.admin-report-filter__field--sigma-status{grid-column:1 / span 2;justify-self:start;width:min(100%,21rem)}.admin-field__label{display:block;color:var(--c-text);font-size:.84rem;font-weight:650}.admin-report-filter__result-menu{position:relative;width:100%}.admin-report-filter__result-summary{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) .9rem;align-items:center;gap:.45rem;width:100%;min-height:2.25rem;padding:.42rem .5rem .42rem .68rem;border:1px solid var(--c-line);border-radius:.5rem;color:var(--c-text);background:#ffffff0a;font-size:.82rem;font-weight:650;line-height:1.15;text-align:left;cursor:pointer;list-style:none}.admin-report-filter__result-summary::marker{content:""}.admin-report-filter__result-summary::-webkit-details-marker{display:none}.admin-report-filter__result-summary:focus-visible{outline:2px solid var(--admin-accent);outline-offset:1px;border-color:transparent}.admin-report-filter__result-summary-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-report-filter__result-summary:after{content:"";justify-self:center;width:.42rem;height:.42rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:var(--c-text-dim);transform:rotate(45deg) translate(-1px,-1px);transform-origin:center;transition:transform .14s ease}.admin-report-filter__result-menu[open] .admin-report-filter__result-summary:after{transform:rotate(225deg) translate(-1px,-1px)}.admin-report-filter__result-options{box-sizing:border-box;position:absolute;top:calc(100% + .32rem);left:0;z-index:35;display:flex;width:100%;flex-direction:column;gap:.2rem;padding:.36rem;border:1px solid var(--c-line);border-radius:.5rem;background:var(--c-surface);box-shadow:0 16px 34px #00000047}.admin-report-filter__result-option{display:grid;grid-template-columns:1rem minmax(0,1fr);align-items:center;gap:.42rem;min-height:2.05rem;padding:.34rem .46rem;border:1px solid transparent;border-radius:.5rem;color:var(--c-text);background:transparent;font-size:.78rem;font-weight:650;line-height:1.1;text-align:left}.admin-report-filter__result-option:hover{border-color:var(--c-line);background:#ffffff0a}.admin-report-filter__result-option:has(input:checked){border-color:#3b82f657;background:#3b82f61f}.admin-report-filter__result-option input{width:.9rem;height:.9rem;margin:0;accent-color:var(--admin-accent)}.admin-report-filter__result-option span{min-width:0;overflow-wrap:anywhere}.admin-report-list{display:grid;gap:.62rem;min-width:0}.admin-report-list__empty{border:1px solid var(--c-line);border-radius:.75rem;background:var(--c-surface)}.admin-report-row{display:grid;grid-template-columns:5.35rem minmax(0,1fr);align-items:stretch;gap:.78rem;min-width:0;padding:.72rem .82rem;border:1px solid var(--c-line);border-radius:.75rem;background:var(--c-surface);transition:border-color .15s ease,background .15s ease}.admin-report-row:hover{border-color:#94a3b857;background:var(--admin-row-hover)}.admin-report-row__body{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:.32rem}.admin-report-row__head{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:.65rem}.admin-report-row__badges{display:flex;flex:0 1 auto;min-width:0;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.32rem}.admin-report-row__badges .admin-badge,.admin-report-list__signals .admin-compact-signal{max-width:100%;white-space:normal;overflow-wrap:anywhere}.admin-report-row__projects{display:flex;min-width:0;flex-wrap:wrap;gap:.18rem .85rem;color:var(--c-text-dim);font-size:.78rem;line-height:1.25}.admin-report-row__projects span{min-width:0;overflow-wrap:anywhere}.admin-report-list__sigma-detail{color:#fecaca;overflow:visible;text-overflow:clip;white-space:normal}.admin-device-filter__footer,.admin-project-filter__footer,.admin-employee-filter__footer{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex-wrap:wrap}.admin-device-filter__footer .admin-btn,.admin-project-filter__footer .admin-btn,.admin-employee-filter__footer .admin-btn{margin-left:auto}.admin-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.admin-pagination__controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-pagination__button-icon,.admin-pagination__page-short{display:none}.admin-pagination__size{width:8.5rem;display:flex;flex-direction:column;gap:.35rem}.admin-pagination__size span{font-size:.82rem;font-weight:500;color:var(--c-text-dim)}.admin-pagination__size select{width:100%;background:var(--c-bg);border:1px solid var(--c-line);color:var(--c-text);border-radius:10px;padding:.6rem .7rem;font-size:.95rem;font-family:inherit}.admin-pagination__size select:focus{outline:2px solid var(--admin-accent);outline-offset:2px;border-color:var(--admin-accent)}.admin-employee-list__main{min-width:0;display:flex;align-items:center;gap:.65rem}.admin-employee-photo{flex:0 0 auto;width:2.35rem;height:2.35rem;padding:0;border:1px solid var(--c-line);border-radius:.5rem;overflow:hidden;background:#ffffff0a;color:var(--c-text);display:inline-flex;align-items:center;justify-content:center;font:inherit}.admin-employee-photo img{width:100%;height:100%;object-fit:cover}.admin-employee-photo--button{cursor:pointer;-webkit-tap-highlight-color:transparent}.admin-employee-photo--button:hover{border-color:#3b82f6b3;filter:brightness(1.08)}.admin-employee-photo--button:focus-visible{outline:2px solid var(--admin-accent);outline-offset:2px}.admin-employee-photo--placeholder{font-size:.75rem;font-weight:700;color:var(--c-text-dim)}.admin-employee-photo--loading{color:var(--admin-accent);border-color:#3b82f673}.admin-employee-photo--error{color:#fecaca;border-color:#dc262659}.admin-employee-list__copy{min-width:0;display:flex;flex-direction:column;gap:.25rem}.admin-employee-list__name{font-weight:600;line-height:1.25}.admin-employee-list__project-mobile,.admin-employee-list__signals{display:none}.admin-employee-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.admin-employee-signal{display:inline-flex;align-items:center;gap:.25rem;padding:.08rem .38rem;border:1px solid var(--c-line);border-radius:999px;color:var(--c-text-dim);background:#ffffff08;font-size:.68rem;font-weight:650;line-height:1.4;white-space:nowrap}.admin-employee-signal__dot{width:.42rem;height:.42rem;border-radius:50%;background:currentColor}.admin-employee-signal--ok{color:#bbf7d0;border-color:#22c55e59;background:#22c55e1a}.admin-employee-signal--off{color:#fecaca;border-color:#dc262652;background:#dc26261a}.admin-project-list__summary,.admin-device-list__summary,.admin-tenant-list__summary{display:none}.admin-project-actions,.admin-device-actions,.admin-tenant-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.admin-compact-title{display:block;min-width:0;overflow-wrap:anywhere;font-weight:650;line-height:1.2}.admin-compact-subline{display:block;min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.78rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.admin-compact-signals{display:flex;flex-wrap:wrap;gap:.25rem .35rem}.admin-compact-signal{display:inline-flex;align-items:center;gap:.25rem;padding:.08rem .38rem;border:1px solid var(--c-line);border-radius:999px;color:var(--c-text-dim);background:#ffffff08;font-size:.68rem;font-weight:650;line-height:1.4;white-space:nowrap}.admin-compact-signal__dot{width:.42rem;height:.42rem;border-radius:50%;background:currentColor}.admin-compact-signal--ok{color:#bbf7d0;border-color:#22c55e59;background:#22c55e1a}.admin-compact-signal--off{color:#fecaca;border-color:#dc262652;background:#dc26261a}.admin-device-list__token-mobile{display:none}.admin-device-installations{min-width:11rem}.admin-device-installations summary{display:grid;grid-template-columns:minmax(0,1fr);gap:.12rem;min-height:2rem;padding:.28rem .42rem;border:1px solid var(--c-line);border-radius:8px;color:var(--c-text);background:#ffffff09;cursor:pointer;list-style:none;font-size:.78rem;font-weight:700;line-height:1.15}.admin-device-installations summary::marker,.admin-device-installations summary::-webkit-details-marker{display:none;content:""}.admin-device-installations summary:focus-visible{outline:2px solid var(--admin-accent);outline-offset:1px}.admin-device-installations__last{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.68rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.admin-device-installations__empty{display:inline-flex;align-items:center;min-height:2rem;color:var(--c-text-dim);font-size:.78rem;font-weight:650}.admin-device-installations__list{display:grid;gap:.4rem;margin-top:.45rem}.admin-device-installation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:start;padding:.48rem .5rem;border:1px solid rgba(255,255,255,.06);border-radius:8px;background:#0000001a}.admin-device-installation__main{display:grid;min-width:0;gap:.12rem}.admin-device-installation__title{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:.3rem;color:var(--c-text);font-size:.78rem;font-weight:750;line-height:1.15}.admin-device-installation__id,.admin-device-installation__context{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.68rem;font-weight:650;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.admin-tenant-list__title-row{display:flex;min-width:0;align-items:center;gap:.4rem}.admin-tenant-list__desktop-name{display:inline-flex;min-width:0;align-items:center;gap:.4rem}.admin-tenant-list tbody tr:hover{background:linear-gradient(90deg,#3b82f614,#14b8a60a),var(--admin-row-hover)}.admin-tenant-page{max-width:80rem}.admin-tenant-page__intro{max-width:42rem;margin-top:.35rem;font-size:.9rem;line-height:1.35}.admin-tenant-collapse{width:100%;min-height:3rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .8rem;border-radius:8px;color:var(--c-text);cursor:pointer;text-align:left}.admin-tenant-collapse:hover{border-color:#3b82f661}.admin-tenant-collapse__text{display:flex;min-width:0;align-items:baseline;gap:.55rem}.admin-tenant-collapse__title{min-width:0;overflow:hidden;font-size:.95rem;font-weight:700;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.admin-tenant-collapse__meta{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.78rem;font-weight:650;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.admin-tenant-collapse__icon{width:1.55rem;height:1.55rem;display:inline-grid;flex:0 0 auto;place-items:center;border:1px solid var(--c-line);border-radius:8px;color:var(--c-text-dim);background:#ffffff0a;font-size:1rem;font-weight:750;line-height:1}.admin-tenant-forms{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:.85rem;align-items:start}.admin-tenant-forms[hidden]{display:none}.admin-tenant-card{gap:.7rem;padding:.95rem 1rem;border-radius:.85rem}.admin-tenant-card__header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.6rem}.admin-tenant-card__title{margin:0;font-size:1rem;font-weight:650;line-height:1.15}.admin-tenant-card__meta{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.admin-tenant-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}.admin-tenant-card--owner .admin-tenant-card__fields{grid-template-columns:minmax(8rem,.9fr) minmax(0,1fr) minmax(0,1fr)}.admin-tenant-card .admin-field{min-width:0}.admin-tenant-card .admin-page__actions{display:grid;grid-template-columns:minmax(0,max-content)}.admin-tenant-secret{overflow-wrap:anywhere}.admin-form.admin-tenant-filter{display:grid;grid-template-columns:minmax(14rem,1fr) auto;gap:.75rem;align-items:end;padding:.8rem .95rem;border-radius:.85rem}.admin-tenant-filter .admin-form__help{padding-bottom:.62rem;white-space:nowrap}.admin-tenant-controls{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(12rem,16rem);align-items:end;gap:.75rem}.admin-tenant-search{min-width:0}.admin-tenant-search .admin-form__help{margin-top:0;white-space:nowrap}.admin-tenant-list__metrics{display:flex;min-width:0;flex-wrap:wrap;gap:.24rem}.admin-tenant-metric{--tenant-metric-accent: #60a5fa;--tenant-metric-bg: rgba(59, 130, 246, .12);--tenant-metric-border: rgba(96, 165, 250, .34);--tenant-metric-value: #dbeafe;display:inline-flex;max-width:100%;align-items:center;gap:.32rem;padding:.16rem .48rem;border:1px solid var(--tenant-metric-border);border-radius:999px;background:linear-gradient(180deg,#ffffff0e,#fff0),var(--tenant-metric-bg);box-shadow:inset 0 1px #ffffff0a;line-height:1.2;white-space:nowrap}.admin-tenant-metric:before{width:.42rem;height:.42rem;flex:0 0 auto;border-radius:999px;background:var(--tenant-metric-accent);box-shadow:0 0 0 .14rem #ffffff0a;content:""}.admin-tenant-metric__label{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.68rem;font-weight:700;text-overflow:ellipsis}.admin-tenant-metric__value{color:var(--tenant-metric-value);font-size:.76rem;font-variant-numeric:tabular-nums;font-weight:800}.admin-tenant-metric--projects{--tenant-metric-accent: #60a5fa;--tenant-metric-bg: rgba(59, 130, 246, .13);--tenant-metric-border: rgba(96, 165, 250, .35);--tenant-metric-value: #dbeafe}.admin-tenant-metric--employees{--tenant-metric-accent: #34d399;--tenant-metric-bg: rgba(16, 185, 129, .12);--tenant-metric-border: rgba(52, 211, 153, .34);--tenant-metric-value: #bbf7d0}.admin-tenant-metric--devices{--tenant-metric-accent: #a78bfa;--tenant-metric-bg: rgba(139, 92, 246, .12);--tenant-metric-border: rgba(167, 139, 250, .34);--tenant-metric-value: #ddd6fe}.admin-tenant-metric--users{--tenant-metric-accent: #fbbf24;--tenant-metric-bg: rgba(245, 158, 11, .12);--tenant-metric-border: rgba(251, 191, 36, .34);--tenant-metric-value: #fde68a}.admin-tenant-metric--checkins{--tenant-metric-accent: #22d3ee;--tenant-metric-bg: rgba(6, 182, 212, .12);--tenant-metric-border: rgba(34, 211, 238, .32);--tenant-metric-value: #cffafe}.admin-tenant-metric--delivery{--tenant-metric-accent: #fb7185;--tenant-metric-bg: rgba(244, 63, 94, .12);--tenant-metric-border: rgba(251, 113, 133, .34);--tenant-metric-value: #ffe4e6}.admin-tenant-list__desktop-only .admin-tenant-metric{min-width:2.65rem;justify-content:center;padding-inline:.42rem}.admin-tenant-list__desktop-only .admin-tenant-metric__label{display:none}.admin-form{display:flex;flex-direction:column;gap:.9rem}.admin-field{display:flex;flex-direction:column;gap:.35rem}.admin-field>label{font-size:.82rem;font-weight:500;color:var(--c-text-dim)}.admin-field input,.admin-field select,.admin-field textarea{background:var(--c-bg);border:1px solid var(--c-line);color:var(--c-text);border-radius:10px;padding:.6rem .7rem;font-size:.95rem;font-family:inherit;width:100%}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{outline:2px solid var(--admin-accent);outline-offset:1px;border-color:transparent}.admin-field input:disabled,.admin-field select:disabled,.admin-field textarea:disabled{opacity:.6;cursor:not-allowed}.admin-field--inline{flex-direction:row;align-items:center;gap:.5rem}.admin-field--inline>label{order:1}.admin-field--inline input[type=checkbox]{width:auto}.admin-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.9rem}.admin-project-location-action{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-project-location-action--prominent{margin-top:.05rem}.admin-field--maps-location textarea{min-height:4.25rem;resize:vertical}.admin-field--maps-location .admin-page__actions{justify-content:flex-start}.admin-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--c-line);border-radius:10px;padding:.55rem 1rem;font-size:.92rem;font-weight:600;font-family:inherit;color:var(--c-text);background:var(--c-surface);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:filter .12s ease,background .12s ease}.admin-btn:hover:not(:disabled){filter:brightness(1.08)}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-btn--primary{background:var(--admin-accent);border-color:transparent;color:#fff}.admin-btn--primary:hover:not(:disabled){background:var(--admin-accent-press);filter:none}.admin-btn--ghost,.admin-btn--location{background:transparent}.admin-btn--location-prominent{width:100%;min-height:3.25rem;padding:.85rem 1.05rem;border-color:#0ea5e973;background:linear-gradient(135deg,#0ea5e93d,#22c55e2e),var(--c-surface);box-shadow:inset 0 0 0 1px #ffffff0a;font-size:1rem}.admin-btn--location-prominent:hover:not(:disabled){border-color:#0ea5e9b3;filter:brightness(1.08)}.admin-btn--danger{background:transparent;border-color:#dc262680;color:#fca5a5}.admin-btn--danger:hover:not(:disabled){background:#dc26261f;filter:none}.admin-btn--sm{padding:.35rem .7rem;font-size:.82rem;border-radius:8px}.admin-alert{margin:0;padding:.65rem .85rem;border-radius:10px;font-size:.88rem;border:1px solid var(--c-line)}.admin-alert--error{color:#fecaca;border-color:#dc262666;background:#dc26261f}.admin-alert--info{color:#bfdbfe;border-color:#3b82f666;background:#3b82f61f}.admin-alert--success{color:#bbf7d0;border-color:#22c55e66;background:#22c55e1f}.admin-alert--warning{color:#fde68a;border-color:#f59e0b73;background:#f59e0b1f}.admin-form__help{margin:0;font-size:.78rem;line-height:1.35;color:var(--c-text-dim)}.admin-loading{min-height:60dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--c-text-dim)}.admin-loading__label{font-size:.9rem}.admin-auth{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:max(1.5rem,var(--admin-safe-top)) max(1.5rem,var(--admin-safe-right)) max(1.5rem,var(--admin-bottom-inset)) max(1.5rem,var(--admin-safe-left));background:var(--c-bg);overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-auth__card{width:100%;max-width:24rem;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.75rem}.admin-auth__card--centered{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.admin-auth__title{font-size:1.35rem;font-weight:700;margin:0 0 .35rem}.admin-auth__subtitle{font-size:.9rem;color:var(--c-text-dim);margin:0 0 1.25rem}.admin-auth__card--centered .admin-auth__subtitle{margin:0}.admin-auth__actions{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.admin-tabbar,.admin-more{display:none}@keyframes admin-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:720px){html.admin-shell-active,body.admin-shell-active{background:var(--c-bg-2);height:100%;overflow-x:clip;overflow-y:hidden;overflow-y:clip}body.admin-shell-active #root{min-height:0;height:100%}.admin-shell{--admin-current-topbar-height: calc(var(--admin-topbar-height) + var(--admin-safe-top));min-height:0;height:100%}html.admin-pwa-standalone,html.admin-pwa-standalone body.admin-shell-active,html.admin-pwa-standalone body.admin-shell-active #root,html.admin-pwa-standalone .admin-shell{height:100lvh}.admin-topbar{position:sticky;top:0;z-index:30;height:var(--admin-current-topbar-height);padding-top:var(--admin-safe-top);padding-left:max(1rem,var(--admin-safe-left));padding-right:max(1rem,var(--admin-safe-right))}.admin-topbar__brand{align-items:center}.admin-topbar__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-topbar__subtitle{display:none}.admin-tenant-switcher{flex:1 1 auto;min-width:0;max-width:10rem;margin-left:0}.admin-tenant-switcher select{min-height:2rem;padding:.34rem .5rem;font-size:.78rem}.admin-topbar__name,.admin-topbar__email{max-width:9rem}@supports selector(:has(*)){@media(max-width:420px){.admin-topbar:has(.admin-tenant-switcher) .admin-topbar__title{display:none}}}.admin-body{flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.admin-nav{display:none}.admin-main{flex:1 1 auto;padding:1.1rem;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.admin-main{overflow-x:hidden}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.dashboard-stats .admin-stat{min-width:0;min-height:4.75rem;gap:.18rem;padding:.72rem .68rem;border-radius:.72rem}.dashboard-stats .admin-stat__value{font-size:1.55rem;line-height:1.02}.dashboard-stats .admin-stat__label{font-size:.72rem;line-height:1.15;overflow-wrap:normal}.dashboard-page-header{gap:.5rem}.dashboard-map-link{min-height:2rem;padding:.36rem .48rem;border-radius:8px;font-size:.76rem}.dashboard-map-link svg{width:.92rem;height:.92rem}.dashboard-recognition{gap:.75rem}.dashboard-recognition__preset-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}.dashboard-recognition__preset{width:100%;min-width:0;padding-inline:.2rem;font-size:.7rem;line-height:1.05}.dashboard-recognition__custom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:.45rem}.dashboard-recognition__date-field{width:100%;gap:.18rem}.dashboard-recognition__date-field>span{font-size:.68rem;line-height:1}.dashboard-recognition__date-field input{width:100%;min-width:0;max-width:100%;height:auto;min-height:1.95rem;padding:.28rem .14rem .28rem .34rem;border-radius:.5rem;font-size:.74rem;line-height:1.1;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dashboard-recognition__date-field input::-webkit-calendar-picker-indicator{width:.9rem;min-width:.9rem;margin:0;padding:0}.dashboard-recognition__apply{grid-column:1 / -1;width:100%;min-height:1.95rem;padding:.28rem .48rem;border-radius:.5rem;font-size:.75rem}.dashboard-timeline{gap:.62rem;padding:.68rem;border-radius:.72rem}.dashboard-timeline__head{display:grid;gap:.5rem}.dashboard-timeline__title{font-size:.86rem}.dashboard-timeline__subtitle{font-size:.7rem;line-height:1.25}.dashboard-timeline__legend{justify-content:flex-start;gap:.32rem .52rem;font-size:.66rem}.dashboard-timeline__plot{min-height:13.8rem;padding:.6rem 2.2rem 1.8rem 1.95rem;border-radius:.62rem}.dashboard-timeline__grid,.dashboard-timeline__bars,.dashboard-timeline__rate{top:.62rem;right:2.2rem;bottom:1.82rem;left:1.95rem}.dashboard-timeline__scale{top:.58rem;bottom:1.82rem;font-size:.58rem}.dashboard-timeline__scale--left{left:.38rem}.dashboard-timeline__scale--right{right:.32rem}.dashboard-timeline__bars{gap:2px}.dashboard-timeline__x-ticks{right:2.2rem;bottom:.62rem;left:1.95rem;font-size:.58rem}.dashboard-timeline__detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.dashboard-timeline__detail-main{grid-column:1 / -1}.dashboard-timeline__detail>div{padding:.48rem .52rem;border-radius:.5rem}.dashboard-timeline__detail span{font-size:.6rem}.dashboard-timeline__detail strong{font-size:.76rem}.dashboard-recognition__metrics{gap:.55rem}.dashboard-recognition__metric{padding:.68rem}.dashboard-recognition__value{font-size:1.35rem}.dashboard-recognition__label{font-size:.7rem}.dashboard-recognition__item{grid-template-columns:minmax(0,1fr) auto;gap:.25rem .5rem}.dashboard-recognition__bar{grid-column:1 / -1}.dashboard-recognition__pct{justify-self:end}@media(max-width:340px){.dashboard-page-header{gap:.4rem}.dashboard-stats{gap:.45rem}.dashboard-stats .admin-stat{min-height:4.4rem;padding:.62rem .55rem}.dashboard-stats .admin-stat__value{font-size:1.45rem}.dashboard-stats .admin-stat__label{font-size:.68rem}.dashboard-recognition__metrics{grid-template-columns:minmax(0,1fr)}.dashboard-recognition__preset-list{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-recognition__custom{grid-template-columns:minmax(0,1fr)}.dashboard-timeline__plot{min-height:12.6rem;padding-inline:1.8rem}.dashboard-timeline__grid,.dashboard-timeline__bars,.dashboard-timeline__rate,.dashboard-timeline__x-ticks{right:1.8rem;left:1.8rem}.dashboard-timeline__scale--left{left:.28rem}.dashboard-timeline__scale--right{right:.22rem}.dashboard-timeline__detail{grid-template-columns:minmax(0,1fr)}.dashboard-timeline__detail-main{grid-column:auto}}.admin-report-filter,.admin-device-filter,.admin-project-filter,.admin-employee-filter{gap:.5rem;padding:.58rem;border-radius:.72rem}.admin-report-filter .admin-field-row,.admin-device-filter .admin-field-row,.admin-project-filter .admin-field-row,.admin-employee-filter .admin-field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.45rem .38rem}.admin-report-filter__field--wide{grid-column:auto}.admin-report-filter .admin-field,.admin-device-filter .admin-field,.admin-project-filter .admin-field,.admin-employee-filter .admin-field{min-width:0;gap:.18rem}.admin-report-filter .admin-field>label{font-size:.68rem;line-height:1}.admin-device-filter .admin-field>label{font-size:.68rem;line-height:1}.admin-project-filter .admin-field>label{font-size:.68rem;line-height:1}.admin-employee-filter .admin-field>label{font-size:.68rem;line-height:1}.admin-report-filter .admin-field__label{font-size:.68rem;line-height:1}.admin-report-filter .admin-field input,.admin-report-filter .admin-field select,.admin-device-filter .admin-field input,.admin-device-filter .admin-field select,.admin-project-filter .admin-field input,.admin-project-filter .admin-field select,.admin-employee-filter .admin-field input,.admin-employee-filter .admin-field select{width:100%;min-width:0;max-width:100%;min-height:1.95rem;padding:.28rem .44rem;border-radius:.5rem;font-size:.78rem;line-height:1.1;box-sizing:border-box}.admin-employee-filter .admin-field select,.admin-project-filter .admin-field select{padding-right:1.35rem;text-overflow:ellipsis}.admin-device-filter__footer,.admin-project-filter__footer,.admin-employee-filter__footer{gap:.38rem}.admin-device-filter__footer .admin-form__help,.admin-project-filter__footer .admin-form__help,.admin-employee-filter__footer .admin-form__help{font-size:.72rem;line-height:1.15}.admin-device-filter__footer .admin-btn,.admin-project-filter__footer .admin-btn,.admin-employee-filter__footer .admin-btn{min-height:1.9rem;padding:.28rem .48rem;border-radius:.5rem;font-size:.75rem}.admin-report-filter input[type=date]{min-width:0;padding-left:.34rem;padding-right:.14rem;font-size:.74rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.admin-report-filter input[type=date]::-webkit-calendar-picker-indicator{width:.9rem;min-width:.9rem;margin:0;padding:0}.admin-report-filter .admin-page__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.admin-report-filter .admin-report-filter__actions{grid-template-columns:minmax(0,1fr)}.admin-report-filter .admin-page__actions .admin-btn{min-width:0;min-height:2.05rem;justify-content:center;padding:.34rem .55rem;font-size:.8rem}@media(max-width:340px){.admin-report-filter__field--wide{grid-column:1 / -1}}.admin-session-diagnostics{gap:.5rem;padding:.58rem;border-radius:.5rem}.admin-session-diagnostics__header{align-items:flex-start}.admin-session-diagnostics__title{font-size:.84rem}.admin-session-diagnostics__list{grid-template-columns:minmax(0,1fr);gap:.42rem}.admin-session-diagnostic{flex-direction:column;gap:.42rem;padding:.5rem .54rem}.admin-session-diagnostic__detail{white-space:normal}.admin-session-diagnostic__signals{justify-content:flex-start}.admin-report-filter__field--full{grid-column:1 / -1}.admin-report-filter__field--status,.admin-report-filter__field--sigma-status{grid-column:1 / -1;width:100%}.admin-report-filter__result-menu{width:100%}.admin-report-filter__result-summary{min-height:1.95rem;padding:.3rem .44rem .3rem .5rem;font-size:.74rem}.admin-report-filter__result-options{gap:.16rem;padding:.28rem}.admin-report-filter__result-option{grid-template-columns:.92rem minmax(0,1fr);gap:.34rem;min-height:1.8rem;padding:.28rem .38rem;font-size:.7rem}.admin-tenant-page{gap:.72rem}.admin-tenant-page .admin-page__header{gap:.35rem}.admin-tenant-page__intro{display:none}.admin-tenant-controls{grid-template-columns:1fr;gap:.5rem}.admin-tenant-search{gap:.22rem}.admin-tenant-search>label{font-size:.72rem}.admin-tenant-search input{min-height:2.05rem;padding:.34rem .5rem;border-radius:.55rem;font-size:.82rem}.admin-tenant-search .admin-form__help{margin-top:-.08rem;font-size:.7rem}.admin-tenant-collapse{min-height:2.55rem;gap:.5rem;padding:.48rem .58rem}.admin-tenant-collapse__text{gap:.42rem}.admin-tenant-collapse__title{font-size:.88rem}.admin-tenant-collapse__meta{font-size:.68rem}.admin-tenant-collapse__icon{width:1.35rem;height:1.35rem;font-size:.9rem}.admin-tenant-forms{grid-template-columns:1fr;gap:.55rem}.admin-tenant-card{gap:.52rem;padding:.64rem;border-radius:.72rem}.admin-tenant-card__header{gap:.45rem}.admin-tenant-card__title{font-size:.9rem}.admin-tenant-card__meta{max-width:9rem;font-size:.68rem}.admin-tenant-card__fields,.admin-tenant-card--owner .admin-tenant-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.admin-tenant-card__field--tenant{grid-column:1 / -1}.admin-tenant-card .admin-field{gap:.22rem}.admin-tenant-card .admin-field>label{font-size:.72rem}.admin-tenant-card .admin-field input,.admin-tenant-card .admin-field select{min-height:2.1rem;padding:.36rem .48rem;border-radius:.55rem;font-size:.82rem}.admin-tenant-card .admin-page__actions{grid-template-columns:1fr;gap:.4rem}.admin-tenant-card .admin-page__actions .admin-btn{min-height:2.05rem;padding:.34rem .55rem;font-size:.8rem}.admin-tenant-card .admin-alert{padding:.5rem .58rem;font-size:.76rem}.admin-form.admin-tenant-filter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.62rem;border-radius:.72rem}.admin-tenant-filter .admin-field{min-width:0;gap:.22rem}.admin-tenant-filter .admin-field>label{font-size:.72rem}.admin-tenant-filter .admin-field input{min-height:2.08rem;padding:.34rem .5rem;border-radius:.55rem;font-size:.82rem}.admin-tenant-filter .admin-form__help{padding-bottom:.45rem;font-size:.72rem}.admin-table-wrap{overflow-x:visible;border:none;background:transparent}.admin-table,.admin-table tbody{display:block;width:100%}.admin-table thead{display:none}.admin-table tbody tr,.admin-table tbody tr:hover{display:block;margin-bottom:.7rem;padding:.2rem .1rem;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius)}.admin-table tbody td{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.55rem .85rem;border:none;border-bottom:1px solid var(--c-line);text-align:right;overflow-wrap:anywhere;word-break:break-word}.admin-table tbody tr td:last-child{border-bottom:none}.admin-table tbody td[data-label]:before{content:attr(data-label);flex:0 0 auto;margin-right:1rem;color:var(--c-text-dim);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:left}.admin-table tbody td:not([data-label]){justify-content:flex-start;text-align:left}.admin-table__empty{display:block;text-align:center}.admin-offline-approvals-layout,.admin-detail-list{grid-template-columns:minmax(0,1fr)}.admin-project-list .admin-table__empty,.admin-device-list .admin-table__empty,.admin-user-list .admin-table__empty,.admin-tenant-list .admin-table__empty{grid-column:1 / -1}.admin-delivery-cell{align-items:flex-end;min-width:0;max-width:min(100%,18rem)}.admin-delivery-cell__detail{text-align:right}.admin-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.05rem 0}.admin-pagination__range{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.admin-pagination__range-label,.admin-pagination__button-label,.admin-pagination__page-long,.admin-pagination__size span{display:none}.admin-pagination__controls{flex-wrap:nowrap;justify-content:flex-end;gap:.3rem}.admin-pagination__button-icon,.admin-pagination__page-short{display:inline}.admin-pagination__controls .admin-btn{width:2rem;height:2rem;justify-content:center;padding:0}.admin-pagination__page{min-width:2.75rem;justify-content:center;padding:.15rem .45rem}.admin-pagination__size{width:auto}.admin-pagination__size select{width:3.65rem;height:2rem;padding:.25rem .4rem;border-radius:.55rem;font-size:.82rem}.admin-employee-list tbody tr,.admin-employee-list tbody tr:hover{display:block;margin-bottom:.5rem;padding:.58rem .65rem;background:var(--c-surface);border:1px solid var(--c-line);border-radius:.75rem}.admin-employee-list tbody td{display:block;padding:0;border:none;text-align:left}.admin-employee-list tbody td[data-label]:before{content:none}.admin-employee-list .admin-employee-list__project,.admin-employee-list .admin-employee-list__desktop-status{display:none}.admin-employee-list__main{gap:.65rem}.admin-employee-photo{width:2.65rem;height:2.65rem;border-radius:.55rem}.admin-employee-list__name{display:block;overflow-wrap:anywhere;font-size:.93rem;line-height:1.2}.admin-employee-list__project-mobile{display:block;overflow:hidden;color:var(--c-text-dim);font-size:.78rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.admin-employee-list__signals{display:flex;flex-wrap:wrap;gap:.25rem .35rem;margin-top:.1rem}.admin-employee-list__actions{margin-top:.48rem}.admin-employee-actions{justify-content:flex-start;flex-wrap:nowrap;gap:.35rem;overflow-x:auto;padding-bottom:.05rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-employee-actions::-webkit-scrollbar{display:none}.admin-employee-actions .admin-btn{flex:0 0 auto;min-height:2rem;padding:.36rem .55rem;font-size:.78rem}.admin-project-list tbody tr,.admin-project-list tbody tr:hover,.admin-device-list tbody tr,.admin-device-list tbody tr:hover,.admin-user-list tbody tr,.admin-user-list tbody tr:hover,.admin-tenant-list tbody tr,.admin-tenant-list tbody tr:hover{--admin-compact-actions-width: 6.7rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--admin-compact-actions-width));gap:.35rem .65rem;align-items:start;margin-bottom:.5rem;padding:.58rem .65rem;background:var(--c-surface);border:1px solid var(--c-line);border-radius:.75rem}.admin-project-list tbody td,.admin-device-list tbody td,.admin-user-list tbody td,.admin-tenant-list tbody td{display:block;min-width:0;padding:0;border:none;text-align:left}.admin-project-list tbody td[data-label]:before,.admin-device-list tbody td[data-label]:before,.admin-user-list tbody td[data-label]:before,.admin-tenant-list tbody td[data-label]:before{content:none}.admin-project-list .admin-project-list__desktop-name,.admin-project-list .admin-project-list__desktop-only,.admin-device-list .admin-device-list__desktop-label,.admin-device-list .admin-device-list__desktop-only,.admin-device-list .admin-device-list__desktop-installations,.admin-device-list .admin-device-list__desktop-token,.admin-user-list .admin-user-list__desktop-email,.admin-user-list .admin-user-list__desktop-only,.admin-tenant-list .admin-tenant-list__desktop-name,.admin-tenant-list .admin-tenant-list__desktop-only{display:none}.admin-project-list__summary,.admin-device-list__summary,.admin-user-list__summary,.admin-tenant-list__summary{display:flex;min-width:0;flex-direction:column;gap:.28rem}.admin-project-list__actions,.admin-device-list__actions,.admin-user-list__actions,.admin-tenant-list__actions{grid-column:2;grid-row:1;align-self:start;justify-self:stretch;margin-top:0}.admin-project-actions,.admin-device-actions,.admin-user-actions,.admin-tenant-actions{flex-direction:column;justify-content:flex-start;align-items:stretch;flex-wrap:nowrap;gap:.32rem;overflow:visible;padding-bottom:0}.admin-project-actions .admin-btn,.admin-device-actions .admin-btn,.admin-user-actions .admin-btn,.admin-tenant-actions .admin-btn{width:100%;min-width:0;min-height:1.9rem;padding:.32rem .42rem;font-size:.74rem;line-height:1.1;white-space:nowrap}.admin-device-list__token-mobile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem;margin-top:.08rem}.admin-device-list__token{min-width:0;overflow:hidden;color:var(--c-text-dim);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.admin-device-list__token-mobile .admin-btn{min-height:1.8rem;padding:.28rem .48rem;font-size:.74rem}.admin-device-installations--compact{min-width:0;margin-top:.08rem}.admin-device-installations--compact summary{min-height:1.9rem;padding:.25rem .38rem;font-size:.74rem}.admin-device-installations--compact .admin-device-installation{grid-template-columns:minmax(0,1fr)}.admin-device-installations--compact .admin-compact-signal{justify-self:start}.admin-user-list__signals{display:flex;flex-wrap:wrap;gap:.25rem .35rem;margin-top:.08rem}.admin-user-list__signals .admin-badge+.admin-badge{margin-left:0}.admin-user-actions .admin-btn[data-mobile-label]{font-size:0}.admin-user-actions .admin-btn[data-mobile-label]:after{content:attr(data-mobile-label);font-size:.74rem;line-height:1}.admin-tenant-list tbody tr,.admin-tenant-list tbody tr:hover{--admin-compact-actions-width: 4.15rem;gap:.28rem .5rem;margin-bottom:.42rem;padding:.48rem .55rem;background:linear-gradient(135deg,#3b82f61a,#14b8a60e 48%,#f43f5e0b),var(--c-surface);border-color:#94a3b83d;border-radius:.68rem;box-shadow:inset 0 1px #ffffff09}.admin-tenant-list__summary{gap:.28rem}.admin-tenant-list__title-row{gap:.32rem}.admin-tenant-list__title-row .admin-badge{padding:.1rem .38rem;font-size:.66rem}.admin-tenant-list__metrics{gap:.18rem .22rem}.admin-tenant-list__metrics .admin-tenant-metric{gap:.22rem;padding:.1rem .34rem}.admin-tenant-list__metrics .admin-tenant-metric:before{width:.34rem;height:.34rem;box-shadow:none}.admin-tenant-list__metrics .admin-tenant-metric__label{font-size:.62rem}.admin-tenant-list__metrics .admin-tenant-metric__value{font-size:.68rem}.admin-tenant-actions .admin-btn{min-height:1.72rem;padding:.25rem .32rem;font-size:.7rem}.admin-report-list{gap:.45rem}.admin-report-row{grid-template-columns:5.35rem minmax(0,1fr);gap:.58rem;padding:.54rem .62rem;border-radius:.7rem}.admin-report-row__body{gap:.24rem}.admin-report-row__head{gap:.45rem}.admin-report-row__badges{gap:.24rem}.admin-report-row__projects{gap:.12rem .55rem;font-size:.74rem}.admin-report-row .admin-compact-title{font-size:.92rem}.admin-report-list__signals{margin-top:.02rem}.admin-report-list__signals .admin-compact-signal{max-width:100%;font-size:.66rem}@media(max-width:340px){.admin-report-photo-preview{width:4.75rem;flex-basis:4.75rem}.admin-report-row{grid-template-columns:4.75rem minmax(0,1fr)}}.admin-report-identity-summary{gap:.16rem}.admin-report-identity-summary--button{width:auto;max-width:100%}.admin-employee-detail-modal{width:calc(100vw - 1.4rem);max-height:calc(100dvh - 2rem - var(--admin-safe-top) - var(--admin-safe-bottom));padding:.85rem}.admin-employee-detail-modal__header{flex-direction:column;gap:.5rem}.admin-employee-detail-modal__header .admin-btn{width:100%}.admin-employee-detail-modal__body{grid-template-columns:minmax(0,1fr);gap:.8rem}.admin-employee-detail-modal__photo img,.admin-employee-detail-modal__photo-placeholder,.admin-employee-detail-modal__photo-loading{max-height:48dvh}.admin-employee-detail-modal__details{grid-template-columns:minmax(0,1fr);gap:.22rem}.admin-employee-detail-modal__details dd{margin-bottom:.28rem}.admin-audit-image-modal{width:calc(100vw - 1.4rem);max-height:calc(100dvh - 2rem - var(--admin-safe-top) - var(--admin-safe-bottom));padding:.85rem}.admin-audit-image-modal__header{flex-direction:column;gap:.5rem}.admin-audit-image-modal__header .admin-btn{width:100%}.admin-audit-image-modal__image{max-height:58dvh}.admin-audit-image-modal__details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem}.admin-tabbar{display:flex;flex:0 0 var(--admin-tabbar-height);z-index:40;height:var(--admin-tabbar-height);justify-content:stretch;align-items:center;gap:.15rem;padding-bottom:max(.25rem,calc(var(--admin-safe-bottom) * .25));padding-left:max(.75rem,var(--admin-safe-left));padding-right:max(.75rem,var(--admin-safe-right));padding-top:.25rem;background:var(--c-bg-2);border-top:1px solid var(--c-line);box-shadow:0 -10px 24px #00000038}.admin-tabbar__tab{flex:1 1 0;width:auto;min-width:0;height:3.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.46rem .1rem;border:none;background:transparent;color:var(--c-text-dim);font-family:inherit;font-size:.75rem;font-weight:500;text-decoration:none;border-radius:.5rem;cursor:pointer;transition:background .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}.admin-tabbar__tab:hover{background:var(--admin-row-hover);color:var(--c-text)}.admin-tabbar__tab.is-active{background:#3b82f624;color:var(--admin-accent)}.admin-tabbar__tab.is-active svg{color:var(--admin-accent)}.admin-tabbar__tab svg{flex:0 0 auto;width:1.375rem;height:1.375rem}.admin-tabbar__label{display:block;flex:0 0 auto;max-width:100%;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;line-height:1rem;letter-spacing:0}@media(max-width:340px){.admin-tabbar{gap:.05rem;padding-left:max(.45rem,var(--admin-safe-left));padding-right:max(.45rem,var(--admin-safe-right))}.admin-tabbar__tab{padding-left:.04rem;padding-right:.04rem}.admin-tabbar__tab svg{width:1.25rem;height:1.25rem}.admin-tabbar__label{font-size:.66rem}}.admin-more{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.admin-more__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#07122399;cursor:pointer}.admin-more__sheet{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:.15rem;background:var(--c-surface);border-top:1px solid var(--c-line);border-radius:18px 18px 0 0;padding:.5rem max(.75rem,var(--admin-safe-right)) 1.25rem max(.75rem,var(--admin-safe-left));animation:admin-sheet-up .18s ease}.admin-more__handle{width:2.5rem;height:.28rem;border-radius:999px;background:var(--c-line);margin:.2rem auto .5rem}.admin-more__item{display:flex;align-items:center;gap:.7rem;min-height:48px;padding:.6rem .7rem;border:none;background:transparent;color:var(--c-text);font-family:inherit;font-size:.98rem;font-weight:500;text-align:left;text-decoration:none;border-radius:12px;cursor:pointer}.admin-more__item.is-active{background:var(--admin-row-hover);font-weight:600}.admin-more__item.is-active svg{color:var(--admin-accent)}.admin-more__item--logout{margin-top:.15rem;color:#fca5a5;border-top:1px solid var(--c-line);border-radius:0 0 12px 12px}}.admin-btn:focus-visible,.admin-nav__link:focus-visible,.admin-tabbar__tab:focus-visible,.admin-more__item:focus-visible{outline:2px solid var(--admin-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.admin-more__sheet{animation:none}.admin-btn,.admin-nav__link{transition:none}.spinner{animation-duration:1.6s}}.admin-map-popup-shell .leaflet-popup-content-wrapper{background:var(--c-surface);color:var(--c-text);border:1px solid var(--c-line);border-radius:14px;box-shadow:0 14px 40px #00000073;padding:0}.admin-map-popup-shell .leaflet-popup-content{margin:0;padding:.85rem .95rem;line-height:1.35}.admin-map-popup-shell .leaflet-popup-tip{background:var(--c-surface);border:1px solid var(--c-line)}.admin-map-popup-shell a.leaflet-popup-close-button{color:var(--c-text-dim);padding:.35rem .4rem 0 0}.admin-map-popup-shell a.leaflet-popup-close-button:hover{color:var(--c-text)}.admin-map-popup{display:flex;flex-direction:column;gap:.7rem;min-width:0}.admin-map-popup__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-right:1rem}.admin-map-popup__title{font-size:.98rem;font-weight:700;color:var(--c-text);min-width:0;overflow-wrap:anywhere}.admin-map-popup__badge{flex:0 0 auto;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:.2rem .45rem;border-radius:999px;border:1px solid var(--c-line);color:var(--c-text-dim);white-space:nowrap}.admin-map-popup__badge--ambos{color:#cdb8ff;border-color:color-mix(in srgb,var(--c-turno24) 60%,transparent);background:color-mix(in srgb,var(--c-turno24) 22%,transparent)}.admin-map-popup__badge--12h{color:#bfe8cf;border-color:color-mix(in srgb,var(--admin-ok) 55%,transparent);background:color-mix(in srgb,var(--admin-ok) 20%,transparent)}.admin-map-popup__badge--24h{color:#c7d2ff;border-color:color-mix(in srgb,var(--admin-accent) 60%,transparent);background:color-mix(in srgb,var(--admin-accent) 22%,transparent)}.admin-map-popup__stats{display:flex;flex-direction:column}.admin-map-popup__stat{display:flex;align-items:baseline;gap:.6rem;padding:.42rem 0;border-bottom:1px solid var(--c-line)}.admin-map-popup__stat:first-child{padding-top:0}.admin-map-popup__stat:last-child{padding-bottom:0;border-bottom:0}.admin-map-popup__stat-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.05rem}.admin-map-popup__stat-label{font-size:.8rem;color:var(--c-text);overflow-wrap:anywhere}.admin-map-popup__stat-hint{font-size:.68rem;color:var(--c-text-dim)}.admin-map-popup__stat-value{flex:0 0 auto;font-size:1.2rem;font-weight:700;line-height:1;color:var(--c-text);font-variant-numeric:tabular-nums}.admin-map-popup__last{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;font-size:.74rem}.admin-map-popup__last-label{color:var(--c-text-dim)}.admin-map-popup__last-value{margin-left:auto;color:var(--c-text);font-weight:600}.admin-map-popup__chips{display:flex;flex-wrap:wrap;gap:.3rem}.admin-map-popup__chip{font-size:.62rem;color:var(--c-text-dim);padding:.15rem .4rem;border:1px solid var(--c-line);border-radius:6px;white-space:nowrap}.admin-map-popup__action{width:100%;justify-content:center;margin-top:.1rem}.admin-map-popup__coords{font-size:.78rem;color:var(--c-text-dim)}:root{--c-bg: #0b1f3a;--c-bg-2: #102a4c;--c-surface: #16335c;--c-text: #f1f5f9;--c-text-dim: #9fb3cc;--c-entrada: #16a34a;--c-entrada-press: #15803d;--c-salida: #dc2626;--c-salida-press: #b91c1c;--c-turno24: #4f46e5;--c-turno24-press: #4338ca;--c-danger: #f87171;--c-line: rgba(255, 255, 255, .12);--radius: 18px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow-x:clip}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--c-bg);color:var(--c-text);-webkit-font-smoothing:antialiased;overscroll-behavior:none}.app-shell{min-height:100dvh;display:flex;flex-direction:column;padding:calc(var(--safe-top) + .75rem) .9rem calc(var(--safe-bottom) + .9rem)}.capture-header{flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:.65rem .75rem;min-height:4rem}.capture-header__identity{flex:1;min-width:0;padding-top:.05rem}.capture-header__title{font-size:clamp(2.15rem,9vw,2.9rem);font-weight:900;line-height:.95;letter-spacing:0;text-wrap:balance;overflow-wrap:break-word;word-break:normal}.capture-header__sub{margin-top:.1rem;font-size:.95rem;line-height:1.15;color:var(--c-text-dim)}.capture-header__actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap;flex-shrink:0;max-width:min(100%,22rem);padding-top:.05rem}.capture-header__actions .btn--ghost,.capture-header__actions .icon-btn{background:#ffffff0a;box-shadow:inset 0 1px #ffffff14}.icon-btn{background:transparent;border:1px solid var(--c-line);color:var(--c-text);border-radius:10px;width:2.4rem;height:2.4rem;font-size:1.1rem;cursor:pointer}.selectors{display:flex;flex-direction:column;gap:.4rem;margin:.6rem 0}.selector-row{display:flex;gap:1.2rem;font-size:.95rem}.selector-row label{display:inline-flex;align-items:center;gap:.35rem;color:var(--c-text)}.capture-main{flex:1;min-height:0;display:flex;flex-direction:column;gap:.7rem;padding-top:.4rem}.giant-btn{flex:1;border:none;border-radius:var(--radius);color:#fff;font-size:clamp(1.6rem,7vw,2.6rem);font-weight:800;letter-spacing:.02em;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center;padding:1rem;transition:filter .12s ease;-webkit-tap-highlight-color:transparent}.giant-btn:active{filter:brightness(.92)}.giant-btn:disabled{opacity:.7;cursor:progress}.giant-btn--entrada{background:var(--c-entrada)}.giant-btn--salida{background:var(--c-salida)}.giant-btn--turno12{background:var(--c-entrada)}.giant-btn--turno12:active{background:var(--c-entrada-press)}.giant-btn--turno24{background:var(--c-turno24)}.giant-btn--turno24:active{background:var(--c-turno24-press)}.giant-btn__turno{display:flex;flex-direction:column;align-items:center;gap:.15rem;line-height:1.05}.giant-btn__turno-sub{font-size:.42em;font-weight:700;letter-spacing:.16em;opacity:.92}.contrary-btn{align-self:center;background:transparent;border:1px solid var(--c-line);color:var(--c-text-dim);border-radius:12px;padding:.55rem .9rem;font-size:.85rem;cursor:pointer}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#071223eb;display:flex;align-items:center;justify-content:center;padding:1.4rem;z-index:10}.liveness-host{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;background:#071223;display:flex;align-items:center;justify-content:center;padding:calc(.75rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom));overflow-y:auto;isolation:isolate}.liveness-host__content{display:flex;flex-direction:column;gap:.75rem;margin:auto;width:100%;max-width:30rem}.liveness-host__cancel{position:fixed;top:calc(.7rem + env(safe-area-inset-top,0px));right:calc(.75rem + env(safe-area-inset-right,0px));z-index:2147483001;min-height:2.75rem;border:1px solid rgba(226,232,240,.58);border-radius:8px;background:#071223e0;box-shadow:0 .55rem 1.6rem #07122347;color:#f8fafc;padding:.65rem .9rem;font-size:.95rem;font-weight:700;cursor:pointer;touch-action:manipulation}.liveness-host__cancel:hover{background:#0f172af0}.liveness-host__cancel:focus-visible{outline:3px solid rgba(34,211,238,.7);outline-offset:3px}.liveness-host .amplify-liveness-cancel-container,.liveness-host .amplify-liveness-cancel-button{display:none!important}.liveness-host__detector{width:100%}.liveness-host__loading{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--c-text-dim)}.panel{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.4rem;max-width:28rem;width:100%;text-align:center}.panel h2{margin:0 0 .5rem;font-size:1.3rem}.panel p{margin:.3rem 0;color:var(--c-text-dim)}.unlink-auth{text-align:left}.unlink-auth h2,.unlink-auth>p{text-align:center}.unlink-auth__error{margin:.7rem 0 0;font-size:.95rem}.confirm-line{font-size:1.6rem;font-weight:700;color:#fff}.overlay--confirmation{background:linear-gradient(#071223c2,#071223e6),var(--c-bg)}.confirmation-panel{width:min(100%,34rem);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 1.6rem);overflow-y:auto;border:1px solid rgba(15,23,42,.1);border-radius:var(--radius);background:#f8fafc;color:#0f172a;box-shadow:0 1.4rem 3.2rem #02081757;padding:1rem;text-align:left}.confirmation-hero{display:grid;grid-template-columns:7.4rem minmax(0,1fr);gap:1rem;align-items:center}.confirmation-photo{width:7.4rem;aspect-ratio:3 / 4;border-radius:16px;overflow:hidden;background:#0f172a;color:#e2e8f0;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #ffffff1f;flex:0 0 auto}.confirmation-photo img{width:100%;height:100%;object-fit:cover}.confirmation-photo span{font-size:2rem;font-weight:900;letter-spacing:0}.confirmation-summary{min-width:0}.confirmation-kicker{display:inline-flex;align-items:center;min-height:1.65rem;border-radius:999px;background:#dcfce7;color:#166534;padding:.2rem .55rem;font-size:.78rem;font-weight:800}.confirmation-summary h2{margin:.45rem 0 .4rem;color:#0f172a;font-size:1.95rem;line-height:1;letter-spacing:0;overflow-wrap:anywhere}.confirmation-meta-row{display:flex;flex-wrap:wrap;gap:.4rem;color:#475569;font-size:.92rem;font-weight:750}.confirmation-meta-row span{min-height:1.55rem;display:inline-flex;align-items:center;border-radius:999px;background:#e2e8f0;padding:.16rem .5rem}.confirmation-coverage{margin-top:1rem;padding:.75rem 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.confirmation-coverage span{display:block;color:#64748b;font-size:.74rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.confirmation-coverage strong{display:block;margin-top:.25rem;color:#0f172a;font-size:1rem;line-height:1.2;overflow-wrap:anywhere}.confirmation-coverage--active{border-color:#fbbf24}.confirmation-coverage--active span{color:#92400e}.confirmation-projects,.confirmation-metrics{display:grid;gap:.75rem;margin:.9rem 0 0}.confirmation-projects{grid-template-columns:repeat(2,minmax(0,1fr))}.confirmation-projects--single{grid-template-columns:1fr}.confirmation-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.confirmation-projects div,.confirmation-metrics div{min-width:0}.confirmation-projects dt,.confirmation-metrics dt{margin:0;color:#64748b;font-size:.72rem;font-weight:850;letter-spacing:0;text-transform:uppercase}.confirmation-projects dd,.confirmation-metrics dd{margin:.25rem 0 0;color:#0f172a;font-weight:800;line-height:1.15;overflow-wrap:anywhere}.confirmation-metrics dd{font-size:1.05rem}.confirmation-note{margin:.9rem 0 0;border-left:4px solid #f59e0b;padding:.55rem 0 .55rem .7rem;color:#713f12;background:#fffbeb;border-radius:8px;font-weight:650;line-height:1.3}.confirmation-actions{margin-top:1.1rem}.spinner{width:2.6rem;height:2.6rem;border:4px solid var(--c-line);border-top-color:var(--c-text);border-radius:50%;margin:0 auto .8rem;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-loading{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:calc(var(--safe-top) + 1.5rem) 1.5rem calc(var(--safe-bottom) + 1.5rem);background:var(--c-bg);color:var(--c-text-dim)}.app-loading__logo{width:3.2rem;height:3.2rem;object-fit:contain;margin-bottom:.15rem}.app-loading__label{font-size:.95rem;line-height:1.2}.app-update-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147482500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:calc(var(--safe-top) + 1.5rem) 1.5rem calc(var(--safe-bottom) + 1.5rem);background:#071223f5;color:var(--c-text);text-align:center}.app-update-overlay__title{font-size:1.05rem;font-weight:800;line-height:1.2}.btn-row{display:flex;gap:.6rem;justify-content:center;margin-top:1rem;flex-wrap:wrap}.btn-row--subtle{margin-top:.45rem}.btn{border-radius:12px;padding:.7rem 1.1rem;font-size:1rem;font-weight:600;cursor:pointer;border:1px solid var(--c-line)}.btn--primary{background:var(--c-bg-2);color:#fff;border-color:transparent}.btn--ghost{background:transparent;color:var(--c-text)}.btn--sm{padding:.4rem .7rem;font-size:.82rem;font-weight:600;border-radius:10px;min-height:2.4rem;white-space:nowrap}.btn--sm:disabled{opacity:.55;cursor:progress}@media(max-width:520px){.capture-header{display:flex;flex-direction:column;align-items:stretch;gap:.55rem;min-height:0}.capture-header__identity{padding-top:0}.capture-header__title{font-size:clamp(2.05rem,10.5vw,2.85rem);line-height:.94}.capture-header__actions{width:100%;max-width:none;padding-top:0}.btn--sm{padding:.48rem .65rem;font-size:.78rem}.confirmation-panel{padding:.85rem}.confirmation-hero{grid-template-columns:5.9rem minmax(0,1fr);gap:.8rem}.confirmation-photo{width:5.9rem;border-radius:14px}.confirmation-summary h2{font-size:1.55rem}.confirmation-projects,.confirmation-metrics{grid-template-columns:1fr;gap:.65rem}.confirmation-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.confirmation-metrics dt{font-size:.66rem}.confirmation-metrics dd{font-size:.92rem}}.error-title{color:var(--c-danger);font-size:1.25rem;font-weight:700}.form-card{margin:auto;max-width:24rem;width:100%;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.5rem}.form-card h1{font-size:1.3rem;margin:0 0 .4rem}.field{display:flex;flex-direction:column;gap:.3rem;margin:.8rem 0}.field label{font-size:.85rem;color:var(--c-text-dim)}.field input{background:var(--c-bg);border:1px solid var(--c-line);color:var(--c-text);border-radius:10px;padding:.7rem .8rem;font-size:1rem}.field input::placeholder{color:#f1f5f973}.field-hint{margin:.1rem 0 0;color:var(--c-text-dim);font-size:.82rem;line-height:1.35}.device-token-card{max-width:25rem}.device-token-card__header p{margin:0;color:var(--c-text-dim);line-height:1.35}.device-token-card__primary-action{margin-top:1rem}.device-token-card__submit{width:100%;min-height:2.95rem}.device-token-card__secondary{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem .85rem;margin-top:1.2rem;padding-top:.9rem;border-top:1px solid var(--c-line);color:var(--c-text-dim);font-size:.82rem;line-height:1.25}.device-token-card__secondary-label{flex-basis:100%;text-align:center;color:#9fb3ccd1}.device-token-card__link,.device-token-card__text-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--c-text-dim);font:inherit;font-weight:600;padding:.2rem 0;text-decoration:underline;text-underline-offset:.18rem;cursor:pointer}.device-token-card__link:focus-visible,.device-token-card__link:hover,.device-token-card__text-button:focus-visible,.device-token-card__text-button:hover{color:var(--c-text)}.stub-badge{display:none}.home-links{margin:auto;text-align:center}.home-links a{color:#93c5fd}
