@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter/inter-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter/inter-latin-500-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter/inter-latin-600-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter/inter-latin-700-normal.woff2)format("woff2")}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{height:100%}#root{height:100%;min-height:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;background-image:radial-gradient(circle at 80% -10%,#1a9b7a24,#0000 45%),radial-gradient(circle at 0 0,#12785c1a,#0000 40%);background-attachment:fixed;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.45;overflow:hidden}button,a{font:inherit;color:inherit}:where(input,select,textarea){font-variant-numeric:inherit}input[type]:is([type=date],[type=time],[type=datetime-local],[type=month],[type=week]){font-variant-numeric:normal}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0}a{text-decoration:none}.app-shell{flex-direction:column;max-width:520px;height:100%;min-height:0;margin:0 auto;display:flex;position:relative;overflow:hidden}.environment-banner{color:var(--amber);font-size:var(--fs-11);letter-spacing:.12em;text-transform:uppercase;background:#c9903f29;border-bottom:1px solid #c9903f73;flex:0 0 24px;justify-content:center;align-items:center;font-weight:700;display:flex}.screen{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.screen-scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}.admin-home-scroll{min-height:0;padding-bottom:calc(var(--sp-16) + var(--bot));overscroll-behavior-y:contain;flex:1}.door-qr-scroll{min-height:0;padding-bottom:var(--sp-16);overscroll-behavior-y:contain;flex:1}.door-qr-print{margin:0 var(--sp-16);padding:var(--sp-24) var(--sp-16);border-radius:var(--r-16);background:var(--qr-paper);color:var(--qr-ink);align-items:center;gap:var(--sp-12);text-align:center;flex-direction:column;display:flex}.door-qr-title{font-size:var(--fs-21);font-weight:700}.door-qr-code{aspect-ratio:1;width:min(100%,240px);height:auto;display:block}.door-qr-paper{fill:var(--qr-paper)}.door-qr-ink{fill:var(--qr-ink)}.door-qr-caption{font-size:var(--fs-16);font-weight:600}.door-qr-url{font-size:var(--fs-14);overflow-wrap:anywhere}.dashboard-screen{--home-action-height:76px;overflow:hidden}.dashboard-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;padding-bottom:var(--sp-8);flex:1;overflow-y:auto}.dashboard-scroll .list{flex:none;min-height:auto;padding-bottom:0;overflow:visible}@media (width<=520px){.dashboard-screen{position:relative}.dashboard-scroll{padding-bottom:calc(var(--home-actions-height,98px) + var(--sp-24));scroll-padding-bottom:calc(var(--home-actions-height,98px) + var(--sp-24))}.home-actions{z-index:2;position:absolute;bottom:0;left:0;right:0}}.header{height:56px;padding:0 var(--sp-16);flex:none;justify-content:space-between;align-items:center;display:flex}.brand{font-size:var(--fs-18);letter-spacing:-.02em;font-weight:700}.brand span{font-weight:600}.screen-title{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.icon-button{width:44px;height:44px;min-height:44px;color:var(--muted);font-size:var(--fs-21);border-radius:var(--r-12);justify-content:center;align-items:center;display:flex}.icon-sprite{width:0;height:0;position:absolute;overflow:hidden}.icon{pointer-events:none;flex:none;width:24px;height:24px;display:block}.icon.inline{width:16px;height:16px;margin-left:var(--sp-4);vertical-align:middle;display:inline-block}.chevron .icon{width:20px;height:20px}.outlet-labels i .icon,.row-tick .icon,.feed-check .icon{width:16px;height:16px}.state-mark .icon,.success-heading .icon{width:28px;height:28px}.success-heading .icon{margin-right:var(--sp-8);vertical-align:middle;display:inline-block}.success-ring .icon{width:44px;height:44px}.who-badge{align-items:center;gap:var(--sp-8);background:var(--surface-2);border:1px solid var(--line);padding:var(--sp-8) var(--sp-12);min-height:44px;font-size:var(--fs-12);color:var(--soft);border-radius:999px;font-weight:500;display:inline-flex}.who-badge i{background:var(--teal-bright);border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px #22a581cc}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-16);box-shadow:var(--shadow);margin:0 var(--sp-16) var(--sp-12);flex:none;overflow:hidden}.card-head{background:linear-gradient(180deg,var(--card-head-top),var(--surface));border-bottom:1px solid var(--line-soft);padding:var(--sp-12) var(--sp-16);justify-content:space-between;align-items:center;display:flex}.card-head h2{font-size:var(--fs-18);font-weight:600}.card-body{padding:var(--sp-16)}.pill,.sync-badge{border-radius:var(--r-8);padding:var(--sp-4) var(--sp-12);font-size:var(--fs-11);font-weight:600}.pill.ok,.sync-badge.synced{color:var(--teal-bright);background:#22a5812e}.pill.warn,.sync-badge.pending,.sync-badge.stale{color:var(--amber);background:#c9903f29}.pill.bad,.sync-badge.attention{color:var(--alert);background:#d9544e29}.pill.configured{color:var(--muted);background:#94a3b824}.pill.off{background:var(--surface-2);color:var(--soft)}.rail-card{height:auto;min-height:0}.rail-card .card-body{gap:var(--sp-4);padding-bottom:var(--sp-16);display:grid}.rail-wrap{width:100%;min-width:0}.rail-line{background:var(--line);height:2px;margin-bottom:var(--sp-8)}.rail{gap:clamp(1px,.55vw,2px);width:100%;min-width:0;height:38px;display:grid}.hook{background:var(--teal-bright);border:1px solid #0000;border-radius:3px;min-width:0;height:100%}.hook.is-empty{background:color-mix(in srgb,var(--muted) 28%,transparent);border-color:color-mix(in srgb,var(--muted) 55%,var(--line))}.hook.is-free-start{border-left-color:var(--soft)}.rail-wrap.is-empty .hook{background:var(--line);border-color:var(--line)}.hook.warning{background:var(--amber)}.hook.alert{background:var(--alert)}.rail-key{justify-content:space-between;gap:var(--sp-8);margin-top:var(--sp-4);color:var(--muted);font-size:var(--fs-12);font-weight:600;line-height:14px;display:flex}.rail-key span{white-space:nowrap}.figures{gap:var(--sp-16);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;margin-top:0;display:grid}.figure{min-width:0}.figure:last-child{text-align:right}.figure strong{font-size:var(--fs-28);letter-spacing:-.02em;color:var(--teal-bright);white-space:nowrap;font-weight:700;line-height:1.05;display:block}.figure strong.alert{color:var(--alert)}.figure strong.is-empty{color:var(--soft)}.figure span{font-size:var(--fs-12);color:var(--muted);font-weight:600;display:block}.capacity-warning{margin-top:var(--sp-4);color:var(--alert);font-size:var(--fs-12);font-weight:700}.species-strip{gap:var(--sp-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.species-count{background:var(--row);border:1px solid var(--line);border-radius:var(--r-12);min-width:0;padding:var(--sp-8) 0;text-align:center}.species-count strong{font-size:var(--fs-21);font-variant-numeric:tabular-nums;line-height:1.15;display:block}.species-count span{width:100%;margin-top:var(--sp-4);text-align:center;font-size:var(--fs-12);letter-spacing:0;color:var(--soft);white-space:nowrap;font-weight:700;line-height:1.2;display:block}.species-mix{background:color-mix(in srgb,var(--muted) 45%,var(--row));border-radius:999px;grid-column:1/-1;height:6px;display:flex;overflow:hidden}.species-mix-segment{min-width:3px;height:100%}.outlet-labels{margin-top:var(--sp-12);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;display:flex}.outlet-labels button{align-items:center;gap:var(--sp-8);text-align:left;flex:1;min-height:44px;display:flex}.outlet-labels button:last-child{text-align:right;justify-content:flex-end}.outlet-labels b{color:var(--teal-bright);font-size:var(--fs-12);margin-left:var(--sp-8)}.outlet-labels i{border:1px solid var(--line);border-radius:var(--r-8);width:20px;height:20px;color:var(--teal-bright);font-size:var(--fs-14);justify-content:center;align-items:center;font-style:normal;display:flex}.destination-disclosure{border-top:1px solid var(--line-soft)}.destination-disclosure ul{list-style:none}.destination-disclosure li{border-bottom:1px solid var(--line-soft);min-height:44px;padding:var(--sp-8) var(--sp-4);justify-content:space-between;align-items:center;display:flex}.destination-disclosure li:last-child{border-bottom:0}.destination-disclosure strong{color:var(--teal-bright);font-size:var(--fs-16);font-variant-numeric:tabular-nums}.destination-disclosure span,.destination-disclosure p{color:var(--muted);font-size:var(--fs-12)}.destination-disclosure p{padding:var(--sp-12) var(--sp-4)}.disclosure-button{border-top:1px solid var(--line-soft);width:100%;margin-top:var(--sp-12);padding-top:var(--sp-12);font-size:var(--fs-12);color:var(--soft);justify-content:space-between;align-items:center;min-height:56px;display:flex}.disclosure-button span:last-child{color:var(--muted)}.hunter-row{padding:var(--sp-12) 0;border-top:1px solid var(--line-soft);font-size:var(--fs-12);justify-content:space-between;display:flex}.hunter-row b{color:var(--teal-bright)}.section-label{padding:var(--sp-4) var(--sp-16) var(--sp-8);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;font-weight:700;display:flex}.section-label button,.section-label a{min-height:56px;color:var(--soft);text-transform:none;letter-spacing:0;font-size:var(--fs-12);align-items:center;display:flex}.list{min-height:0;padding:0 var(--sp-16) var(--sp-8);flex:1;overflow-y:auto}.current-carcasses-card{box-shadow:none}.current-carcasses-card .card-head{background:0 0}.current-carcasses-card .card-body{padding:var(--sp-12)}.current-carcasses-sort{min-height:44px;color:var(--soft);font-size:var(--fs-12);white-space:nowrap;font-weight:600}.current-carcasses-list{padding:0;overflow:visible}.current-carcasses-footer{border-top:1px solid var(--line-soft);margin-top:var(--sp-4)}.current-carcasses-footer a{min-height:56px;color:var(--soft);font-size:var(--fs-12);align-items:center;font-weight:600;display:flex}.carcass-row{background:var(--row);border:1px solid var(--line);border-radius:var(--r-12);width:100%;margin-bottom:var(--sp-8);text-align:left;align-items:stretch;min-height:72px;display:flex}.carcass-row.selected{border-color:var(--teal-light);background:#22a5811a}.row-edge{border-radius:3px 0 0 3px;flex:0 0 3px;width:3px}.row-edge.warning{background:var(--amber)}.row-edge.alert{background:var(--alert)}.row-tick{border:2px solid var(--line-control);width:28px;height:28px;margin:auto 0 auto var(--sp-12);border-radius:50%;justify-content:center;align-items:center;display:flex}.selected .row-tick{background:var(--teal);border-color:var(--teal-light)}.row-body{padding:var(--sp-12) var(--sp-16);flex:1;min-width:0;container-type:inline-size}.row-top{column-gap:var(--sp-8);grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:baseline;width:100%;min-width:0;display:grid}.tag{font-size:var(--fs-21);color:var(--teal-bright);font-variant-numeric:tabular-nums;white-space:nowrap;justify-self:start}.species{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:var(--sp-4);white-space:nowrap;font-weight:600;display:flex}.carcass-row .row-top .species{letter-spacing:.02em;justify-self:center;font-size:clamp(17px,4.6vw,18px);font-weight:700}.species i{border-radius:2px;flex:0 0 7px;width:7px;height:7px}.age{font-size:var(--fs-14);color:var(--muted);white-space:nowrap;justify-self:end}.age.warning{color:var(--amber)}.age.alert{color:var(--alert)}.row-sub{font-size:var(--fs-12);color:var(--soft);margin-top:var(--sp-4);display:block}@container (width<=239px){.row-top:has(.pending-dot){grid-template-columns:max-content minmax(0,1fr)}.row-top:has(.pending-dot) .age{grid-column:2;justify-self:end}}.actions{padding:var(--sp-8) var(--sp-16) calc(var(--sp-16) + var(--bot));gap:var(--sp-12);flex:none;display:flex}.btn{border-radius:var(--r-12);padding:var(--sp-16) var(--sp-16);font-size:var(--fs-16);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:76px;font-weight:600;line-height:1.25;display:flex}.btn.primary{background:var(--teal);box-shadow:0 6px 18px #12785c66}.btn.neutral{background:var(--row);border:1px solid var(--line-control)}.btn.ghost{border:1px solid var(--teal-light);color:var(--teal-bright);background:#1a9b7a14}.btn:disabled{cursor:not-allowed}.btn.disabled:not([aria-busy=true]),.btn:disabled:not([aria-busy=true]){opacity:1;background:var(--row);border:1px solid var(--line);color:var(--muted);-webkit-text-fill-color:var(--muted);box-shadow:none}.btn[aria-busy=true]{cursor:progress}.btn.disabled[aria-busy=true]{background:var(--teal);color:var(--text);box-shadow:0 6px 18px #12785c66}.btn[aria-busy=true]:not(.directional-action)>span:first-child:before{content:"";box-sizing:border-box;width:18px;height:18px;margin-right:var(--sp-8);vertical-align:-3px;border:2px solid;border-right-color:#0000;border-radius:50%;animation:.7s linear infinite pending-spin;display:inline-block}@keyframes pending-spin{to{transform:rotate(360deg)}}.btn.sm{min-height:56px;font-size:var(--fs-16);padding:var(--sp-12) var(--sp-16)}.btn+.btn{margin-top:var(--sp-8)}.carcass-tag-actions{--carcass-tag-control-height:56px;align-items:stretch}.carcass-tag-actions .btn{height:var(--carcass-tag-control-height);min-height:var(--carcass-tag-control-height);padding:var(--sp-12) var(--sp-16);border-radius:var(--r-12);justify-content:center;align-items:center}.carcass-tag-actions .btn+.btn{margin-top:0}.carcass-tag-actions .btn>span{justify-content:center;align-items:center;gap:var(--sp-8);display:inline-flex}.carcass-tag-actions .btn .icon{width:20px;height:20px}.home-actions{padding:var(--sp-8) var(--sp-16) var(--sp-16);background:linear-gradient(180deg,#0c1320eb,var(--bg) 28%);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.home-actions .btn{height:var(--home-action-height);min-width:0;min-height:var(--home-action-height);padding:var(--sp-16) var(--sp-16);border-radius:var(--r-12);font-size:var(--fs-18);justify-content:center;align-items:center;font-weight:700}.home-actions .btn.directional-action{gap:var(--sp-8);padding:var(--sp-12) var(--sp-12) var(--sp-12) var(--sp-16);grid-template-columns:minmax(0,1fr) 28px;align-items:center;display:grid;overflow:hidden}.home-actions .btn.directional-action.directional-start{padding:var(--sp-12) var(--sp-16) var(--sp-12) var(--sp-12);grid-template-columns:28px minmax(0,1fr)}.directional-action-copy{z-index:1;text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;display:flex;position:relative}.directional-action-icon{z-index:1;width:28px;height:28px;color:var(--action-icon);pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:relative}.directional-action-icon svg{width:28px;height:28px;display:block}.directional-action.neutral .directional-action-icon{color:var(--action-icon-neutral)}.home-actions .btn+.btn{margin-top:0}.route-button{align-items:center;gap:var(--sp-16);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-16);width:100%;padding:var(--sp-16) var(--sp-16);min-height:96px;box-shadow:var(--shadow);margin-bottom:var(--sp-12);display:flex}.route-button.primary{border-color:var(--teal-light);background:linear-gradient(180deg,var(--card-head-top),var(--surface))}.route-icon{border-radius:var(--r-12);background:var(--row);border:1px solid var(--line);width:48px;height:48px;font-size:var(--fs-21);flex:0 0 48px;justify-content:center;align-items:center;display:flex}.route-copy{flex-direction:column;display:flex}.route-copy strong{font-size:var(--fs-16)}.route-copy>span{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-4)}.chevron{color:var(--muted);font-size:var(--fs-21);margin-left:auto}.step-header{align-items:center;gap:var(--sp-12);padding:0 var(--sp-16) var(--sp-8);display:flex}.step-header>span{width:22px;height:22px;color:var(--teal-bright);font-size:var(--fs-12);background:#22a58129;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.step-header strong{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.detail-rows{margin:0 var(--sp-16) var(--sp-12);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-16);overflow:hidden}.detail-row{width:100%;padding:var(--sp-12) var(--sp-16);border-bottom:1px solid var(--line-soft);text-align:left;align-items:center;min-height:60px;display:flex}.detail-row:last-child{border-bottom:0}.detail-key{font-size:var(--fs-12);color:var(--muted);flex:0 0 76px;width:76px}.detail-row strong{font-size:var(--fs-16);align-items:center;gap:var(--sp-8);display:flex}.change{color:var(--muted);font-size:var(--fs-12);margin-left:auto;font-weight:600}.change.choose{color:var(--teal-bright)}.detail-row strong.is-empty{color:var(--muted)}.species-dot{border-radius:2px;width:9px;height:9px}.streak-chip{color:var(--amber);border-radius:var(--r-8);padding:var(--sp-4) var(--sp-8);font-size:var(--fs-12);margin-left:var(--sp-8);background:#c9903f29;font-weight:700}.entry-action-message{margin:calc(-1*var(--sp-4)) var(--sp-16) var(--sp-8);color:var(--amber);font-size:var(--fs-12);text-align:center;font-weight:600}.viewfinder,.viewfinder *{pointer-events:none}.viewfinder{margin:0 var(--sp-16) var(--sp-12);border-radius:var(--r-16);border:1px solid var(--line);background:radial-gradient(120% 80% at 50% 40%,var(--view-glow) 0%,var(--view-mid) 55%,var(--view-deep) 100%);flex:1;justify-content:center;align-items:center;min-height:150px;display:flex;position:relative;overflow:hidden}.viewfinder.compact{max-height:190px}.viewfinder video,.captured-preview{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.viewfinder video[hidden]{display:none}.captured-preview{z-index:1;object-fit:contain;background:var(--view-deep)}.camera-guide{aspect-ratio:5/3;z-index:2;width:min(74%,250px);position:relative}.compact .camera-guide{width:min(60%,190px)}.camera-guide span{border:3px solid var(--teal-bright);width:26px;height:26px;position:absolute}.camera-guide span:first-child{border-bottom:0;border-right:0;top:0;left:0}.camera-guide span:nth-child(2){border-bottom:0;border-left:0;top:0;right:0}.camera-guide span:nth-child(3){border-top:0;border-right:0;bottom:0;left:0}.camera-guide span:nth-child(4){border-top:0;border-left:0;bottom:0;right:0}.viewfinder.status-shown{padding:var(--sp-16) var(--sp-16) calc(var(--sp-24) + var(--sp-16) + var(--sp-4))}.camera-status{bottom:var(--sp-8);padding:0 var(--sp-16);text-align:center;font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--teal-bright);z-index:3;font-weight:700;position:absolute;left:0;right:0}.camera-status.unavailable{font-size:var(--fs-14);letter-spacing:normal;text-transform:none;color:var(--soft);font-weight:500}.capture-confirmation{z-index:5;border:1px solid var(--teal-bright);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16);text-align:center;color:var(--text);font-size:var(--fs-14);box-shadow:var(--shadow);background:#0e5a47f0;font-weight:700;position:absolute;bottom:12px;left:12px;right:12px}.success-overlay{z-index:20;text-align:center;padding:var(--sp-24) var(--sp-24) 96px;background:#09141af7;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.success-ring{border:2px solid var(--teal-bright);width:92px;height:92px;color:var(--teal-bright);font-size:var(--fs-44);margin-bottom:var(--sp-24);background:#22a5812e;border-radius:50%;justify-content:center;align-items:center;display:flex}.success-heading{font-size:var(--fs-28);color:var(--teal-bright)}.success-description{font-size:var(--fs-14);color:var(--soft);margin-top:var(--sp-8)}.success-count{font-size:var(--fs-12);letter-spacing:.14em;text-transform:uppercase;margin-top:var(--sp-12);color:var(--muted);font-weight:700}.success-actions{gap:var(--sp-12);width:min(100%,420px);margin-top:var(--sp-24);flex-direction:column;display:flex}.success-actions .btn{width:100%;min-height:64px}.success-actions .btn+.btn{margin-top:0}.undo-bar{left:var(--sp-16);right:var(--sp-16);bottom:calc(var(--sp-16) + var(--bot));z-index:30;background:var(--surface-2);border:1px solid var(--teal-light);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16);justify-content:space-between;align-items:center;gap:var(--sp-12);box-shadow:var(--shadow);animation:sheet-up var(--t-sheet) var(--ease-out);display:flex;position:absolute}.undo-bar-label{min-width:0;font-size:var(--fs-14);color:var(--soft)}.undo-bar-label b{color:var(--teal-bright);font-size:var(--fs-16);font-weight:700}.undo-bar .btn{min-width:44px;min-height:44px;padding:var(--sp-8) var(--sp-16);font-size:var(--fs-14);flex:none;font-weight:600}.carcass-in-screen.has-undo>.actions{padding-bottom:calc(86px + var(--bot))}.count-card{background:var(--surface);border:1px solid var(--teal-light);border-radius:var(--r-16);padding:var(--sp-12) var(--sp-16);margin:0 var(--sp-16) var(--sp-12)}.count-card>div{align-items:baseline;gap:var(--sp-12);display:flex}.count-card strong{font-size:var(--fs-28);color:var(--teal-bright);line-height:1}.count-card span{font-size:var(--fs-14);font-weight:600}.count-card p{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-4)}.scan-feed{padding:0 var(--sp-16) var(--sp-8);flex:1;overflow-y:auto}.feed-row{align-items:center;gap:var(--sp-12);background:var(--row);border:1px solid var(--line);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16);margin-bottom:var(--sp-8);min-height:60px;display:flex}.feed-row.new{border-color:var(--teal-light);background:#22a5811a}.feed-check{background:var(--teal);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.feed-row strong{font-size:var(--fs-21);color:var(--teal-bright);display:block}.feed-row small{font-size:var(--fs-12);color:var(--soft);display:block}.feed-copy{flex:1;min-width:0}.feed-remove{width:44px;height:44px;margin:calc(-1*var(--sp-4)) calc(-1*var(--sp-8)) calc(-1*var(--sp-4)) auto;border-radius:var(--r-12);color:var(--muted);font-size:var(--fs-21);flex:0 0 44px;justify-content:center;align-items:center;display:flex}.scan-type-action{padding:0 var(--sp-16) var(--sp-12);flex:none}.scan-type-action .btn{width:100%}.scan-capture-actions{padding:var(--sp-8) var(--sp-16) var(--sp-8);flex:none}.segmented{background:var(--surface-2);border:1px solid var(--line-control);border-radius:var(--r-12);grid-template-columns:repeat(3,minmax(0,1fr));min-height:56px;display:grid}.segmented button{min-width:0;color:var(--soft);font-size:var(--fs-16);font-weight:500;position:relative}.segmented button[aria-pressed=true]{color:var(--text);font-weight:600}.segmented button[aria-pressed=true]:after{content:"";left:var(--sp-12);right:var(--sp-12);background:var(--teal-bright);height:2px;position:absolute;bottom:0}.message-card,.conflict-card,.mismatch-card{border-radius:var(--r-16);padding:var(--sp-16);margin:0 var(--sp-16) var(--sp-12)}.message-card.error,.conflict-card,.mismatch-card{border:1px solid var(--alert);background:#d9544e1f}.message-card.warning{border:1px solid var(--amber);background:#c9903f1f}.message-card>span,.conflict-card>span,.mismatch-card>span{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--alert);font-weight:700}.message-card.warning>span{color:var(--amber)}.message-card h2,.conflict-card h2,.mismatch-card h2{font-size:var(--fs-16);margin:var(--sp-4) 0}.message-card p,.conflict-card p,.mismatch-card p{font-size:var(--fs-12);color:var(--soft);line-height:1.5}.message-card .btn{width:100%;margin-top:var(--sp-12)}.mismatch-counts{gap:var(--sp-8);margin:var(--sp-12) 0;display:flex}.mismatch-counts strong{background:var(--surface-2);border-radius:var(--r-12);padding:var(--sp-12);text-align:center;font-size:var(--fs-28);flex:1}.mismatch-counts small{font-size:var(--fs-11);color:var(--muted);text-transform:uppercase;display:block}.mismatch-card>b{color:var(--alert);margin-top:var(--sp-12);display:block}.mismatch-detail{margin:var(--sp-12) 0;background:var(--surface-2);border-radius:var(--r-12);padding:var(--sp-4) var(--sp-12)}.mismatch-detail>div{padding:var(--sp-8) 0;border-bottom:1px solid var(--line-soft)}.mismatch-detail>div:last-child{border-bottom:0}.mismatch-detail dt{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.mismatch-detail dd{font-size:var(--fs-12);color:var(--text);margin-top:var(--sp-4)}.conflict-card.ordinary{border-color:var(--amber);background:#c9903f1f}.conflict-card.ordinary>span{color:var(--amber)}.sheet-layer{z-index:100;pointer-events:auto;isolation:isolate;position:fixed;inset:0}.sheet-scrim{z-index:0;pointer-events:auto;animation:fade-in var(--t-scrim) ease-out;background:#060a12bf;position:absolute;inset:0}body.sheet-open .home-actions{pointer-events:none}.sheet{z-index:1;pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-16) var(--r-16) 0 0;box-shadow:var(--shadow);padding:var(--sp-16) var(--sp-16) calc(var(--sp-16) + var(--bot));max-width:520px;max-height:90dvh;animation:sheet-up var(--t-sheet) var(--ease-out);border-bottom:0;margin:auto;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.sheet h2{text-align:center;font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--sp-12)}.sheet-actions{gap:var(--sp-8);margin-top:var(--sp-8);grid-template-columns:repeat(3,1fr);display:grid}.sheet-primary-action{flex:none;width:100%}.sheet-actions .btn+.btn{margin-top:0}.option-list{gap:var(--sp-8);flex-direction:column;display:flex}.option{align-items:center;gap:var(--sp-12);background:var(--row);border:1px solid var(--line);border-radius:var(--r-12);padding:var(--sp-16) var(--sp-16);font-size:var(--fs-16);width:100%;min-height:56px;font-weight:500;display:flex}.option.selected{border-color:var(--teal-light);color:var(--teal-bright);background:#22a5811a}.option i{border-radius:2px;flex:none;width:8px;height:8px}.option-sheet-description{margin:calc(-1*var(--sp-4)) 0 var(--sp-12);text-align:center;color:var(--muted);font-size:var(--fs-12)}.option-cancel{width:100%;min-height:44px;margin-top:var(--sp-8);color:var(--muted);font:inherit;font-size:var(--fs-14);cursor:pointer;background:0 0;border:0;font-weight:600;display:block}.option-meta{font-size:var(--fs-12);color:var(--muted);margin-left:auto}:where(input,select,textarea).option:where(:not([readonly])){border-color:var(--line-control)}:where(input:not([type=date],[type=time],[type=datetime-local],[type=month],[type=week]),select,textarea).option{font-family:inherit}#history-search{color:var(--text)}#history-search::placeholder{color:var(--muted);-webkit-text-fill-color:var(--muted);opacity:1}.history-search{position:relative}.history-search .icon{top:0;bottom:0;left:var(--sp-16);width:20px;height:20px;color:var(--muted);margin:auto 0;position:absolute}.history-search .option{padding-left:calc(var(--sp-24) * 2)}.location-gate{text-align:center;padding:var(--sp-8) var(--sp-8) var(--sp-24)}.location-gate h3{font-size:var(--fs-18);line-height:1.35}.location-gate p{margin-top:var(--sp-8);color:var(--soft);font-size:var(--fs-14);line-height:1.5}.location-gate-pulse{width:42px;height:42px;margin:var(--sp-4) auto var(--sp-16);border:3px solid var(--line);border-top-color:var(--teal-bright);border-radius:50%;animation:.85s linear infinite location-gate-spin;display:block}@keyframes location-gate-spin{to{transform:rotate(360deg)}}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.keypad-value{text-align:center;font-size:var(--fs-44);min-height:56px;font-weight:700}.keypad-slots{justify-content:center;gap:calc(var(--sp-4) * 2.5);margin-bottom:var(--sp-4);display:flex}.keypad-slot{text-align:center;font-variant-numeric:tabular-nums;flex:0 0 32px;width:32px;line-height:56px;position:relative}.keypad-slot:after{content:"";background:var(--line-control);height:2px;position:absolute;bottom:0;left:0;right:0}.keypad-slot.optional:after{opacity:.55}.keypad-hint{text-align:center;font-size:var(--fs-11);color:var(--muted)}.keypad-helper{margin-bottom:var(--sp-12);text-align:center;color:var(--soft);font-size:var(--fs-12);line-height:1.5}.keypad-grid{gap:var(--sp-8);margin:var(--sp-12) 0;grid-template-columns:repeat(3,1fr);display:grid}.key{border-radius:var(--r-12);background:var(--row);border:1px solid var(--line-control);height:56px;font-size:var(--fs-21);justify-content:center;align-items:center;font-weight:600;display:flex}.key:disabled{color:var(--muted);cursor:not-allowed}.keypad-actions{margin-top:var(--sp-12);align-items:stretch}.keypad-actions .btn{width:100%;min-width:0;min-height:56px;font-size:var(--fs-16);color:var(--text);-webkit-text-fill-color:var(--text);font-weight:600}.keypad-actions .keypad-cancel{border:1px solid var(--line-control);background:var(--surface-2)}.keypad-actions .keypad-done.primary{-webkit-text-fill-color:var(--text);font-weight:700}.keypad-actions .btn.disabled{color:var(--muted);-webkit-text-fill-color:var(--muted)}.confirm-tag-actions{gap:var(--sp-8);margin-top:var(--sp-12);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.25fr);align-items:stretch}.confirm-tag-actions .btn{width:100%;min-width:0;min-height:56px;padding:var(--sp-8);font-size:var(--fs-14);text-align:center;overflow-wrap:anywhere;color:var(--text);-webkit-text-fill-color:var(--text);font-weight:600}.confirm-tag-actions .confirm-tag-cancel,.confirm-tag-actions .confirm-tag-again{border:1px solid var(--line-control);background:var(--surface-2)}.confirm-tag-actions .confirm-tag-again{border-color:var(--line);background:var(--row)}.confirm-tag-actions .confirm-tag-add{font-size:var(--fs-16);-webkit-text-fill-color:var(--text);font-weight:700}.tag-photo{border-radius:var(--r-8);background:linear-gradient(120deg,var(--tag-photo-light),var(--tag-photo-dark));flex:0 0 96px;justify-content:center;align-items:center;width:96px;height:66px;display:flex;overflow:hidden}.tag-photo img{object-fit:cover;width:100%;height:100%}.tag-photo-full{z-index:80;justify-content:center;align-items:center;gap:var(--sp-16);padding:var(--sp-24);background:#060a12f5;flex-direction:column;display:flex;position:fixed;inset:0}.tag-photo-full img{object-fit:contain;border-radius:var(--r-12);max-width:100%;max-height:75dvh}.tag-photo-full button,.torch-button{border:1px solid var(--teal-light);border-radius:var(--r-12);color:var(--teal-bright);padding:var(--sp-12) var(--sp-12);font-size:var(--fs-12);font-weight:700}.torch-button{padding:var(--sp-8) var(--sp-8);font-size:var(--fs-11)}.camera-fallback{margin:calc(-1*var(--sp-4)) var(--sp-16) var(--sp-8);color:var(--soft);font-size:var(--fs-12);text-align:center}.camera-retry{margin:calc(-1*var(--sp-4)) var(--sp-16) var(--sp-8);flex:none;justify-content:center;display:flex}.camera-retry .btn.sm{min-height:44px;padding:var(--sp-8) var(--sp-24);flex:none}.viewfinder.compact:has(+.camera-retry){flex-basis:190px}.event{gap:var(--sp-12);padding-bottom:var(--sp-16);display:flex}.event-dot{background:var(--line);width:8px;height:8px;margin-top:var(--sp-8);border-radius:50%;flex:0 0 8px}.event.latest .event-dot{background:var(--teal-bright);box-shadow:0 0 6px #22a581cc}.event strong{font-size:var(--fs-12)}.event p{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-4)}.start{padding:var(--sp-24) var(--sp-24) calc(var(--sp-16) + var(--bot));flex-direction:column;flex:1;justify-content:center;display:flex;overflow-y:auto}.start h1{font-size:var(--fs-28);margin-bottom:var(--sp-8)}.start h1 span{font-weight:600}.start>p{font-size:var(--fs-14);color:var(--muted);margin-bottom:var(--sp-24);line-height:1.6}.eyebrow{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--teal-bright);margin-bottom:var(--sp-12);font-weight:700}.prototype-note{margin-top:var(--sp-24);font-size:var(--fs-12);color:var(--muted);border-top:1px solid var(--line);padding-top:var(--sp-16);line-height:1.6}.signin-form{flex-direction:column;display:flex}.signin-form input{border-radius:var(--r-12);border:1px solid var(--line-control);background:var(--row);width:100%;min-height:56px;color:var(--text);padding:0 var(--sp-16);font:inherit;font-size:var(--fs-16);margin-bottom:var(--sp-12);outline:none}.signin-form input:focus{border-color:var(--teal-light);box-shadow:0 0 0 2px #22a5811f}.signin-form .btn{width:100%}.signin-code-form{margin-top:var(--sp-24);padding-top:var(--sp-24);border-top:1px solid var(--line)}.signin-code-form input{letter-spacing:.28em;font-variant-numeric:tabular-nums}.signin-message{font-size:var(--fs-12);color:var(--teal-bright);margin-top:var(--sp-16);line-height:1.5}.signin-message.error{color:var(--alert)}.signin-form textarea{border-radius:var(--r-12);border:1px solid var(--line-control);background:var(--row);width:100%;min-height:96px;color:var(--text);padding:var(--sp-12) var(--sp-16);font:inherit;font-size:var(--fs-16);margin-bottom:var(--sp-8);resize:vertical;outline:none}.signin-form textarea:focus{border-color:var(--teal-light);box-shadow:0 0 0 2px #22a5811f}.signin-form input[aria-invalid=true],.signin-form textarea[aria-invalid=true]{border-color:var(--alert)}.request-field-error{margin:calc(-1*var(--sp-8)) 0 var(--sp-12)}.request-note-count{color:var(--muted);font-size:var(--fs-12);text-align:right;margin-bottom:var(--sp-12)}.request-access-form .eyebrow{margin-bottom:var(--sp-8)}.request-access-back,.signin-request-access{color:var(--muted)}.request-access-back a,.signin-request-access a{color:var(--teal-bright);font-weight:600;text-decoration:underline}.intro{padding:var(--sp-8) var(--sp-16) var(--sp-16)}.intro h1{font-size:var(--fs-18)}.intro p{font-size:var(--fs-14);color:var(--muted);margin-top:var(--sp-8)}.route-stack{padding:0 var(--sp-16)}.review-head{text-align:center;padding:var(--sp-12) var(--sp-16)}.review-head strong{font-size:var(--fs-44);line-height:1;display:block}.review-head span{font-size:var(--fs-12);color:var(--soft)}.review-head p{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-8)}.review-list{padding:0 var(--sp-16);flex:1;overflow-y:auto}.review-row{align-items:center;gap:var(--sp-12);padding:var(--sp-12) var(--sp-4);border-bottom:1px solid var(--line-soft);min-height:68px;display:flex}.review-row>.tag{width:82px}.review-row .review-meta{flex:1}.review-row small{color:var(--muted);display:block}.review-row button{min-width:56px;min-height:56px;color:var(--muted)}.review-row-actions{flex-direction:column;align-items:flex-end;display:flex}.review-row-actions button{max-width:118px;min-height:44px;font-size:var(--fs-12);text-align:right}.disposal-destination{color:var(--alert)!important}.disposal-warning{box-shadow:0 0 0 1px #d9544e33}.checkout-destinations{margin-top:var(--sp-16);border:1px solid var(--line);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16);gap:var(--sp-4);flex-direction:column;display:flex}.checkout-destinations strong{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.checkout-destinations span{font-size:var(--fs-14)}.checkout-destinations.has-disposal{border-color:var(--alert);background:#d9544e1f}.checkout-destinations.has-disposal>b{color:var(--alert);font-size:var(--fs-18);letter-spacing:.06em}.full-state{text-align:center;padding:var(--sp-24);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.state-mark{width:72px;height:72px;font-size:var(--fs-28);border:1px solid var(--teal-light);color:var(--teal-bright);margin-bottom:var(--sp-16);background:#22a58129;border-radius:50%;justify-content:center;align-items:center;display:flex}.full-state>.number{font-size:var(--fs-44);line-height:1}.full-state h1{font-size:var(--fs-21)}.full-state p{color:var(--soft);margin-top:var(--sp-8)}.reference-line{margin-top:var(--sp-16);border:1px solid var(--line);border-radius:var(--r-8);padding:var(--sp-8) var(--sp-12);color:var(--muted);font-size:var(--fs-12)}.needs-checking{min-height:56px;margin-top:var(--sp-16);border:1px solid var(--amber);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16);color:var(--amber);font-weight:700}.needs-checking.serious{border-color:var(--alert);color:var(--alert)}.full-state .checkout-pending{font-size:var(--fs-12);color:var(--amber)}.pending-dot{width:8px;height:8px;margin-left:var(--sp-8);border:1px solid var(--amber);vertical-align:middle;border-radius:50%;display:inline-block}.detail-page{padding:0 var(--sp-16) var(--sp-12);flex:1;overflow-y:auto}.detail-tag{font-size:var(--fs-44);color:var(--teal-bright)}.detail-grid{gap:var(--sp-8);margin-top:var(--sp-16);grid-template-columns:1fr 1fr;display:grid}.detail-cell{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-12);padding:var(--sp-12) var(--sp-16)}.detail-cell span{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.detail-cell strong{margin-top:var(--sp-4);font-size:var(--fs-14);display:block}.detail-cell strong.species{align-items:center;gap:var(--sp-8);letter-spacing:normal;text-transform:none;color:var(--text);white-space:normal;font-weight:700;display:flex}.detail-section{font-size:var(--fs-11);margin:var(--sp-24) 0 var(--sp-12);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.photo-row{gap:var(--sp-12);align-items:center;display:flex}.photo-row p{font-size:var(--fs-12);color:var(--muted)}.audit-rule{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-8)}.empty{color:var(--muted);font-size:var(--fs-12);padding:var(--sp-24) var(--sp-24);text-align:center}.empty-state{align-items:center;gap:var(--sp-8);padding:var(--sp-24);text-align:center;flex-direction:column;display:flex}.empty-state p{font-size:var(--fs-14);color:var(--soft)}.empty-state .empty-state-title{font-size:var(--fs-18);color:var(--text);font-weight:600}.attention-summary{padding:0 var(--sp-16) var(--sp-12);color:var(--soft);font-size:var(--fs-14)}.error-shell{min-height:100dvh;padding:var(--sp-24);background:var(--bg);place-items:center;display:grid}.error-shell .message-card{width:min(100%,480px)}.error-shell h1{font-size:var(--fs-21);margin:var(--sp-8) 0}.error-shell .actions{padding:var(--sp-16) 0 0;position:static}@media (height<=700px){.card-body{padding:var(--sp-12)}.viewfinder{min-height:130px}.actions{padding-top:var(--sp-4)}.start{justify-content:flex-start}}.capture-confirmation span{display:block}.capture-confirmation .capture-title{justify-content:center;align-items:center;gap:var(--sp-8);display:flex}.capture-confirmation .icon{width:16px;height:16px}.capture-confirmation span+span{margin-top:var(--sp-4);font-size:var(--fs-11);letter-spacing:.04em;font-weight:600}.sheet-actions.two{grid-template-columns:repeat(2,1fr)}.captured-ocr-debug{margin:0 var(--sp-16) var(--sp-12);padding:var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2)}.captured-ocr-debug summary{cursor:pointer;font-size:var(--fs-12);color:var(--soft);font-weight:600}.captured-ocr-debug[open] summary{margin-bottom:var(--sp-12)}.captured-ocr-debug h2{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--sp-12)}.captured-ocr-debug-images{gap:var(--sp-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.captured-ocr-debug-figure{min-width:0}.captured-ocr-debug-figure figcaption,.captured-ocr-debug-figure p,.captured-ocr-debug-figure a{font-size:var(--fs-11);color:var(--muted);margin-top:var(--sp-4);display:block}.captured-ocr-debug-figure img{border-radius:var(--r-8);background:var(--view-deep);object-fit:contain;width:100%;max-height:120px}.captured-ocr-debug pre{margin-top:var(--sp-12);white-space:pre-wrap;word-break:break-word;font-size:var(--fs-11);color:var(--soft)}.btn.danger{border:1px solid var(--alert);color:var(--alert);background:#d9544e29}.screen-fill{flex:1;min-height:0}.account-who{text-align:center;font-size:var(--fs-16);color:var(--soft);margin:var(--sp-4) 0 var(--sp-16);pointer-events:none;font-weight:500}.family-mark{margin:var(--sp-16) 0 0;font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;font-weight:700}.account-menu-actions{gap:var(--sp-12);grid-template-columns:1fr;margin-top:0}.account-menu-actions .btn{width:100%;min-height:56px;padding:var(--sp-12) var(--sp-16);font-size:var(--fs-21);text-align:center;color:var(--text);-webkit-text-fill-color:var(--text);border:1px solid var(--line-control);background:var(--surface-2);justify-content:center;font-weight:700}.account-menu-actions .btn.neutral{border-color:var(--line-control);background:var(--surface-2)}.btn.neutral:disabled{border-color:var(--line)}.account-menu-actions .btn:disabled{border-color:#4a5568}.account-role{margin:calc(-1*var(--sp-8)) 0 var(--sp-16);text-align:center;pointer-events:none}.account-sheet .account-sign-out.btn{width:100%;min-height:44px;margin-top:var(--sp-24);padding:var(--sp-8) var(--sp-16);box-shadow:none;font-size:var(--fs-16);color:var(--soft);-webkit-text-fill-color:var(--soft);background:0 0;border:0;font-weight:600}.confirm-copy{gap:var(--sp-12);margin-bottom:var(--sp-16);flex-direction:column;display:flex}.confirm-copy p{font-size:var(--fs-14);color:var(--soft);text-align:center;line-height:1.5}.admin-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-12);padding:var(--sp-8) var(--sp-16) var(--sp-12);display:flex}.admin-toolbar h1{font-size:var(--fs-18)}.admin-toolbar .btn{flex:none;min-width:132px}.admin-toolbar .btn.admin-add-member{min-height:44px;padding:var(--sp-8) var(--sp-16)}.admin-add-member>span{align-items:center;gap:var(--sp-8);display:inline-flex}.admin-add-member .icon{width:18px;height:18px}.member-list{padding-top:var(--sp-4)}.member-row{align-items:flex-start;gap:var(--sp-8);background:var(--row);border:1px solid var(--line);border-radius:var(--r-12);width:100%;padding:var(--sp-16) var(--sp-16);margin-bottom:var(--sp-8);text-align:left;flex-direction:column;min-height:72px;display:flex}.member-row strong{font-size:var(--fs-16)}.member-status{gap:var(--sp-8);flex-wrap:wrap;display:flex}.access-request-meta{gap:var(--sp-4) var(--sp-12);color:var(--muted);font-size:var(--fs-12);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.access-request-note{resize:vertical;width:100%;min-height:84px;font:inherit;font-size:var(--fs-16);display:block}.feedback-scroll{min-height:0;padding-bottom:calc(var(--sp-16) + var(--bot));flex:1}.feedback-form{padding:0 var(--sp-16)}.home-screen-guide{min-height:0;padding-bottom:calc(var(--sp-24) + var(--bot));flex:1}.guide-steps{padding:0 var(--sp-16) 0 calc(var(--sp-16) + var(--sp-24));font-size:var(--fs-16);color:var(--soft);margin:0}.guide-steps li+li{margin-top:var(--sp-24)}.guide-steps li::marker{color:var(--teal-bright);font-weight:700}.guide-url{color:var(--text);overflow-wrap:anywhere;font-weight:600}.guide-shot{width:100%;height:auto;margin-top:var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);display:block}.guide-shot-page{max-width:220px}.guide-icon{width:60px;height:60px;margin-top:var(--sp-12);border-radius:var(--r-12);display:block}.feedback-form .segmented{margin-bottom:var(--sp-24);grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-form .cleaning-form-message{margin-bottom:var(--sp-12)}.feedback-form-error{padding:0 var(--sp-16)}.feedback-attachment-preview{border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface);margin:0;overflow:hidden}.feedback-attachment-preview img,.feedback-attachment-preview video{object-fit:contain;width:100%;max-height:240px;display:block}.feedback-attachment-preview button{width:100%;min-height:44px;padding:var(--sp-8);color:var(--soft);font-size:var(--fs-12);font-weight:700}.feedback-attachment-actions{gap:var(--sp-8);flex-wrap:wrap;display:flex}.feedback-attachment-help{margin:var(--sp-8) 0 0;color:var(--muted);font-size:var(--fs-12);line-height:1.4}.feedback-row-details{-webkit-line-clamp:2;overflow-wrap:anywhere;color:var(--soft);font-size:var(--fs-14);-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.feedback-attachment{margin:0 var(--sp-16) var(--sp-16)}.feedback-attachment img,.feedback-attachment video{border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface);max-width:100%;max-height:60dvh;display:block}.feedback-attachment figcaption{color:var(--muted);font-size:var(--fs-12)}.feedback-no-attachment{padding:0 var(--sp-16)}.feedback-detail-rows .detail-row strong{white-space:pre-wrap}.confirm-copy .eyebrow{text-align:left;display:block}.dealer-list{padding:0 var(--sp-16) var(--sp-8)}.dealer-list .member-row{min-height:88px}.member-row.dealer-selected{border-color:var(--teal-light);box-shadow:0 0 0 1px var(--teal-light)}.dealer-email{color:var(--muted);font-size:var(--fs-12);overflow-wrap:anywhere}.dealer-threshold-row{min-width:0;padding-bottom:var(--sp-8);border-bottom:1px solid var(--line-soft);margin-bottom:var(--sp-8)}.dealer-threshold-row:last-of-type{border-bottom:0}.dealer-threshold-row .check-row{margin-bottom:0}.dealer-reply{min-width:0;margin-top:var(--sp-16);padding-top:var(--sp-16);border-top:1px solid var(--line-soft)}.dealer-reply .notification-subheading{margin-top:0}.dealer-reply-list{margin:0 0 var(--sp-12);padding:0;list-style:none}.dealer-reply-row{justify-content:space-between;align-items:center;gap:var(--sp-12);min-height:52px;padding:var(--sp-8) 0;border-bottom:1px solid var(--line-soft);display:flex}.dealer-reply-row:last-child{border-bottom:0}.dealer-reply-row .dealer-email{min-width:0;color:var(--text);font-size:var(--fs-14)}.dealer-reply-add{min-width:0}.dealer-reply-add .eyebrow{margin:var(--sp-8) 0 var(--sp-8);display:block}.dealer-reply-add .admin-field-help{margin:0 0 var(--sp-8);display:block}.dealer-reply-add .admin-field{margin-bottom:var(--sp-8)}.dealer-reply-error{margin:0 0 var(--sp-12);color:var(--alert);font-size:var(--fs-12);font-weight:700;display:none}.dealer-reply-add .admin-field:user-invalid{border-color:var(--alert)}.dealer-reply-add .admin-field:user-invalid+.dealer-reply-error{display:block}.dealer-reply-add .btn{width:100%;margin-top:var(--sp-4)}.member-status-facts{gap:var(--sp-16);min-width:0;display:grid}.member-detail-scroll>.detail-section{margin-left:var(--sp-16);margin-right:var(--sp-16)}.member-status-fact{gap:var(--sp-4);min-width:0;display:grid}.member-status-fact:not(:last-child){padding-bottom:var(--sp-16);border-bottom:1px solid var(--line-soft)}.member-status-label{font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.member-status-fact strong{font-size:var(--fs-16)}.member-status-fact p{color:var(--soft);font-size:var(--fs-12);line-height:1.45}.admin-detail-rows .detail-row{column-gap:var(--sp-12);grid-template-columns:minmax(6.5rem,36%) minmax(0,1fr);align-items:start;display:grid}.admin-detail-rows .detail-key{flex:none;width:auto;min-width:0}.admin-detail-rows .detail-row strong{overflow-wrap:anywhere;min-width:0;display:block}.admin-detail-link{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.admin-actions{gap:var(--sp-12);padding:0 var(--sp-16) var(--sp-16);flex-direction:column;display:flex}.admin-actions .btn{width:100%}.admin-actions .btn+.btn{margin-top:0}.admin-actions .admin-edit-form{padding:0}.admin-edit-form{padding:0 var(--sp-16) var(--sp-16)}.admin-field-help{color:var(--muted);font-size:var(--fs-12);margin:var(--sp-8) 0 var(--sp-12);line-height:1.4}.admin-action-feedback{margin:calc(-1*var(--sp-4)) var(--sp-16) var(--sp-12);color:var(--teal-light);font-size:var(--fs-12);text-align:center;font-weight:600;line-height:1.4}.admin-field[readonly]{opacity:.92}.admin-edit-form .btn{width:100%;margin-top:var(--sp-12)}.admin-edit-form .sheet-actions .btn{margin-top:0}.add-member-form{padding:0 var(--sp-16) calc(var(--sp-16) + var(--bot))}.add-member-form .option{margin-bottom:var(--sp-12)}.admin-field{color:var(--text);caret-color:var(--text);-webkit-text-fill-color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;outline:none}.admin-field::placeholder{color:var(--muted);-webkit-text-fill-color:var(--muted);opacity:1}.admin-field:focus{border-color:var(--teal-light);box-shadow:0 0 0 2px #22a5811f}.admin-field:-webkit-autofill{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px var(--row) inset;transition:background-color 9999s ease-out}.admin-field:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px var(--row) inset;transition:background-color 9999s ease-out}.admin-field:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px var(--row) inset;transition:background-color 9999s ease-out}.add-member-form .actions{padding-left:0;padding-right:0}.add-member-form .eyebrow{margin:var(--sp-8) 0 var(--sp-8);display:block}.check-row{align-items:center;gap:var(--sp-12);min-height:56px;font-size:var(--fs-14);color:var(--soft);margin:var(--sp-4) 0 var(--sp-12);display:flex}.check-row input{width:22px;height:22px;accent-color:var(--teal);flex:0 0 22px}.suspended-note{color:var(--alert);font-size:var(--fs-14);line-height:1.5}.notification-scroll{min-height:0;padding-bottom:calc(var(--sp-16) + var(--bot));overscroll-behavior-y:contain;flex:1}.notification-edit{min-width:56px;min-height:44px;padding:var(--sp-8);color:var(--teal-bright);font-size:var(--fs-12);font-weight:700}.notification-edit:disabled{opacity:.55;cursor:not-allowed}.notification-card-summary{align-items:flex-start;gap:var(--sp-8);flex-direction:column;min-width:0;display:flex}.notification-card-summary p{color:var(--soft);font-size:var(--fs-14);line-height:1.4}.notification-card-summary .btn{width:100%;margin-top:var(--sp-4)}.notification-form{border-top:1px solid var(--line-soft);margin-top:var(--sp-16);padding-top:var(--sp-16);min-width:0}.notification-form>.eyebrow,.notification-test>.eyebrow{margin:var(--sp-8) 0 var(--sp-8);display:block}.notification-form .option,.notification-test .option{margin-bottom:var(--sp-12)}.notification-form-actions{margin-top:var(--sp-16)}.notification-recipients{border:0;border-top:1px solid var(--line-soft);min-width:0;margin-top:var(--sp-16);padding-top:var(--sp-16)}.notification-recipients legend{padding-right:var(--sp-8);color:var(--teal-bright);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.notification-subheading{margin:var(--sp-16) 0 var(--sp-8);color:var(--muted);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;font-weight:700;display:block}.notification-recipient{align-items:start;gap:var(--sp-12);min-height:60px;padding:var(--sp-12) 0;border-bottom:1px solid var(--line-soft);color:var(--soft);grid-template-columns:22px minmax(0,1fr);display:grid}.notification-recipient:last-child{border-bottom:0}.notification-recipient input{width:22px;height:22px;accent-color:var(--teal)}.notification-recipient span{min-width:0}.notification-recipient strong,.notification-recipient small{overflow-wrap:anywhere;min-width:0;display:block}.notification-recipient strong{font-size:var(--fs-14);color:var(--text)}.notification-recipient small{margin-top:var(--sp-4);color:var(--muted);font-size:var(--fs-12)}.notification-warning{margin:var(--sp-12) 0;color:var(--amber);font-size:var(--fs-12);font-weight:700}.notification-number-suffix{align-items:center;gap:var(--sp-12);grid-template-columns:minmax(0,1fr) auto;display:grid}.notification-number-suffix span{color:var(--soft);font-size:var(--fs-14)}.notification-capacity-helper{color:var(--teal-bright);font-weight:700}.notification-test .btn{width:100%}.notification-email{overflow-wrap:anywhere}.notification-feedback{margin:0 var(--sp-16) var(--sp-12);padding:var(--sp-12) var(--sp-16);border:1px solid var(--teal-light);border-radius:var(--r-12);color:var(--teal-bright);font-size:var(--fs-12);background:#22a5811a;font-weight:700}.notification-feedback.error{border-color:var(--alert);color:var(--alert);background:#d9544e1f}.notification-history{margin:calc(-1*var(--sp-4)) calc(-1*var(--sp-4))}.notification-history-row{border-bottom:1px solid var(--line-soft)}.notification-history-row:last-child{border-bottom:0}.notification-history-row summary{justify-content:space-between;align-items:center;gap:var(--sp-12);min-height:76px;padding:var(--sp-12) var(--sp-4);cursor:pointer;list-style:none;display:flex}.notification-history-row summary::-webkit-details-marker{display:none}.notification-history-row summary>span{flex-direction:column;min-width:0;display:flex}.notification-history-row summary>.pill{flex-shrink:0}.notification-history-row time{color:var(--muted);font-size:var(--fs-12)}.notification-history-row strong{margin-top:var(--sp-4);font-size:var(--fs-14)}.notification-history-row small{margin-top:var(--sp-4);color:var(--soft);font-size:var(--fs-12);overflow-wrap:anywhere}.notification-history-detail{margin:0 0 var(--sp-12);padding:var(--sp-8) var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2)}.notification-history-detail div{gap:var(--sp-12);padding:var(--sp-8) 0;grid-template-columns:minmax(6.5rem,36%) minmax(0,1fr);display:grid}.notification-history-detail dt{color:var(--muted);font-size:var(--fs-12)}.notification-history-detail dd{min-width:0;color:var(--soft);font-size:var(--fs-12);overflow-wrap:anywhere}.site-access-scroll{min-width:0;min-height:0;padding-bottom:calc(var(--sp-16) + var(--bot));overscroll-behavior-y:contain;flex:1}.site-access-enforcement,.site-access-test{align-items:stretch;gap:var(--sp-12);flex-direction:column;min-width:0;display:flex}.site-access-enforcement>p,.site-access-test>p{color:var(--soft);font-size:var(--fs-14);line-height:1.5}.site-access-toggle{justify-content:space-between;align-items:center;gap:var(--sp-16);min-height:56px;color:var(--text);font-size:var(--fs-16);font-weight:700;display:flex}.site-access-toggle .pill{font-size:var(--fs-11);font-weight:600}.site-access-toggle input{appearance:none;border:1px solid var(--line);background:var(--row);cursor:pointer;border-radius:999px;flex:0 0 54px;width:54px;height:32px;position:relative}.site-access-toggle input:after{content:"";background:var(--soft);border-radius:50%;width:24px;height:24px;transition:transform .16s,background-color .16s;position:absolute;top:3px;left:3px}.site-access-toggle input:checked{border-color:var(--teal-light);background:#22a58140}.site-access-toggle input:checked:after{background:var(--teal-bright);transform:translate(22px)}.site-access-toggle input:focus-visible{outline:2px solid var(--teal-light);outline-offset:3px}.site-access-summary{gap:var(--sp-12);min-width:0;display:grid}.site-access-summary>div{gap:var(--sp-12);grid-template-columns:minmax(6.5rem,36%) minmax(0,1fr);align-items:start;display:grid}.site-access-summary span,.site-access-coordinate-grid span{color:var(--muted);font-size:var(--fs-12)}.site-access-summary strong,.site-access-coordinate-grid strong{min-width:0;color:var(--text);font-size:var(--fs-14);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.site-access-summary>p{color:var(--soft);font-size:var(--fs-12);line-height:1.45}.site-access-unset{color:var(--alert)}.site-access-coordinate-summary strong{font-size:var(--fs-12)}.site-access-test>.btn{width:100%}.site-access-test-result{margin-top:var(--sp-4);padding:var(--sp-16);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);min-width:0}.site-access-test-result.pass{border-color:var(--teal-light)}.site-access-test-result.block{border-color:var(--alert)}.site-access-test-result.retry_required{border-color:var(--amber)}.site-access-test-result h3{font-size:var(--fs-16);line-height:1.4}.site-access-test-result dl{gap:var(--sp-8);margin-top:var(--sp-12);display:grid}.site-access-test-result dl>div{gap:var(--sp-12);color:var(--soft);font-size:var(--fs-12);grid-template-columns:minmax(0,1fr) auto;display:grid}.site-access-test-result dd{font-variant-numeric:tabular-nums;text-align:right;font-weight:700}.site-access-test-result>p{margin-top:var(--sp-12);color:var(--soft);font-size:var(--fs-12);line-height:1.45}.site-access-test-result>.btn{width:100%;margin-top:var(--sp-12)}.site-access-editor-sheet{flex-direction:column;height:95dvh;min-height:0;max-height:95dvh;display:flex;overflow:hidden}.site-access-editor{gap:var(--sp-12);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.site-access-editor-body{gap:var(--sp-12);-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow-y:auto}.site-access-editor-body>p{color:var(--soft);font-size:var(--fs-12);line-height:1.45}.site-access-map-wrapper{width:100%;min-width:0}.site-access-map-wrapper>p{margin-bottom:var(--sp-8);color:var(--soft);font-size:var(--fs-12);line-height:1.4}.site-access-map-stage{width:100%;min-width:0;position:relative}.site-access-map-canvas{border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);width:100%;max-width:100%;min-height:20rem;position:relative;overflow:hidden}.site-access-basemap-selector{z-index:2;padding:var(--sp-4);border-radius:var(--r-12);background:#131b27e6;border:1px solid #ffffff80;grid-template-columns:repeat(2,auto);display:grid;position:absolute;top:8px;left:8px;box-shadow:0 2px 8px #00000040}.site-access-basemap-selector button{min-width:72px;min-height:44px;padding:var(--sp-8) var(--sp-12);border-radius:var(--r-8);color:var(--text);font:inherit;font-size:var(--fs-12);cursor:pointer;background:0 0;border:0;font-weight:700}.site-access-basemap-selector button[aria-pressed=true]{background:var(--teal);color:var(--text)}.site-access-basemap-selector button:focus-visible{outline:2px solid var(--text);outline-offset:-3px}.site-access-map-canvas .maplibregl-ctrl-attrib{max-width:calc(100% - 8px);font-size:10px}.site-access-map-canvas .maplibregl-ctrl-attrib-inner{font-size:10px;line-height:1.35}.btn.ghost.site-access-current-location{width:100%;color:var(--location-action);border-color:var(--location-action-line);-webkit-text-fill-color:var(--location-action);background:#5e93c424;flex:none}.btn.ghost.site-access-current-location:disabled{background:var(--row);border-color:var(--line);color:var(--muted);-webkit-text-fill-color:var(--muted)}.site-access-map-error{padding:var(--sp-12) var(--sp-12);border:1px solid var(--alert);border-radius:var(--r-12);color:var(--alert);font-size:var(--fs-12);background:#d9544e1f;font-weight:700}.site-access-coordinate-grid{gap:var(--sp-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.site-access-coordinate-grid>div{min-width:0;padding:var(--sp-12) var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2)}.site-access-coordinate-grid span,.site-access-coordinate-grid strong{display:block}.site-access-coordinate-grid strong{margin-top:var(--sp-4)}.site-access-editor-body>.eyebrow{margin:var(--sp-4) 0 calc(-1*var(--sp-8));display:block}.site-access-radius-value{align-items:center;gap:var(--sp-12);grid-template-columns:minmax(0,1fr) auto;display:grid}.site-access-radius-value .option{margin:0}.site-access-radius-value>span{color:var(--soft);font-size:var(--fs-14)}.site-access-radius-range{appearance:none;cursor:pointer;touch-action:pan-x;background:0 0;width:100%;height:44px;display:block}.site-access-radius-range::-webkit-slider-runnable-track{background:var(--line-control);border:0;border-radius:999px;height:4px}.site-access-radius-range::-webkit-slider-thumb{appearance:none;box-sizing:border-box;width:28px;height:28px;margin-top:calc(-1*var(--sp-12));border:2px solid var(--teal-light);background:var(--teal-bright);border-radius:50%}.site-access-radius-range::-moz-range-track{background:var(--line-control);border:0;border-radius:999px;height:4px}.site-access-radius-range::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--teal-light);background:var(--teal-bright);border-radius:50%;width:28px;height:28px}.site-access-radius-range:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--teal-bright)}.site-access-radius-range:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--teal-bright)}.site-access-editor .admin-field-help{margin:calc(-1*var(--sp-8)) 0 0}.site-access-editor .notification-feedback{margin:0}.site-access-editor-actions{z-index:2;margin:var(--sp-4) calc(-1*var(--sp-16)) calc(-1*var(--sp-16) - var(--bot));padding:var(--sp-12) var(--sp-16) calc(var(--sp-16) + var(--bot));background:linear-gradient(180deg,#131b27eb,var(--surface) 24%);flex:none}@media (width<=390px){.site-access-coordinate-grid{grid-template-columns:1fr}.site-access-map-canvas{min-height:17rem}}@media (width<=375px){.confirm-tag-actions{gap:var(--sp-4)}.confirm-tag-actions .btn{padding:var(--sp-8) var(--sp-4);font-size:var(--fs-12)}.confirm-tag-actions .confirm-tag-add{font-size:var(--fs-14)}}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.cleaning-card{box-shadow:none}.cleaning-card .card-body{padding:var(--sp-12) var(--sp-16)}.cleaning-history-link{min-height:44px;color:var(--soft);font-size:var(--fs-12);align-items:center;font-weight:600;display:flex}.cleaning-card-content{align-items:center;gap:var(--sp-16);grid-template-columns:minmax(0,1fr) auto;display:grid}.cleaning-card-content .btn{min-width:116px}.cleaning-last{flex-direction:column;min-width:0;display:flex}.cleaning-last>span{color:var(--muted);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.cleaning-last>strong{margin-top:var(--sp-4);font-size:var(--fs-16);line-height:1.35}.cleaning-last>small{margin-top:var(--sp-4);color:var(--soft);font-size:var(--fs-12);overflow-wrap:anywhere}.cleaning-log-content{min-height:0;padding:var(--sp-4) var(--sp-16) var(--sp-16);flex:1;overflow-y:auto}.cleaning-summary{gap:var(--sp-12);margin-bottom:var(--sp-24);padding:var(--sp-16);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);display:grid}.cleaning-summary-by{color:var(--soft);font-size:var(--fs-14)}.cleaning-summary-by strong{color:var(--text);font-size:var(--fs-16);overflow-wrap:anywhere}.cleaning-summary-time{flex-direction:column;display:flex}.cleaning-summary-time span{color:var(--muted);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.cleaning-summary-time time{margin-top:var(--sp-4);font-size:var(--fs-21);font-variant-numeric:tabular-nums;font-weight:700}.cleaning-photo-heading h1{font-size:var(--fs-21)}.cleaning-photo-heading p{margin-top:var(--sp-4);color:var(--muted);font-size:var(--fs-12)}.cleaning-photo-actions{gap:var(--sp-12);margin-top:var(--sp-16);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cleaning-photo-actions .btn{width:100%;min-width:0}.cleaning-photo-actions .btn+.btn{margin-top:0}.cleaning-photo-previews{gap:var(--sp-8);margin-top:var(--sp-16);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.cleaning-photo-previews figure{border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface);min-width:0;overflow:hidden}.cleaning-photo-previews img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.cleaning-photo-previews button{width:100%;min-height:44px;padding:var(--sp-8);color:var(--soft);font-size:var(--fs-12);font-weight:700}.cleaning-no-photos{margin-top:var(--sp-24);padding:var(--sp-16);border:1px dashed var(--line);border-radius:var(--r-12);color:var(--muted);font-size:var(--fs-12);text-align:center}.cleaning-form-message{min-height:20px;margin-top:var(--sp-12);color:var(--amber);font-size:var(--fs-12);font-weight:600}.cleaning-submit-actions .btn{width:100%;min-width:0}.cleaning-success h1{color:var(--teal-bright)}.cleaning-history-list{padding-top:var(--sp-4)}.cleaning-history-row{width:100%;min-height:88px;margin-bottom:var(--sp-8);padding:var(--sp-12) var(--sp-16);border:1px solid var(--line);border-radius:var(--r-12);background:var(--row);text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.cleaning-history-row strong{font-size:var(--fs-14)}.cleaning-history-row span{margin-top:var(--sp-4);color:var(--soft);font-size:var(--fs-12)}.cleaning-history-row small{margin-top:var(--sp-4);color:var(--muted);font-size:var(--fs-12)}.cleaning-detail>h1{margin-top:var(--sp-4);font-size:var(--fs-21)}.cleaning-detail-list{margin-top:var(--sp-16);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);overflow:hidden}.cleaning-detail-list>div{gap:var(--sp-12);min-height:58px;padding:var(--sp-12) var(--sp-16);border-bottom:1px solid var(--line-soft);grid-template-columns:76px minmax(0,1fr);align-items:center;display:grid}.cleaning-detail-list>div:last-child{border-bottom:0}.cleaning-detail-list dt{color:var(--muted);font-size:var(--fs-12)}.cleaning-detail-list dd{min-width:0;font-size:var(--fs-14);overflow-wrap:anywhere;font-weight:600}.cleaning-detail-photos{gap:var(--sp-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.cleaning-photo{min-width:0}.cleaning-photo>button{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-12);background:var(--row);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.cleaning-photo>button:disabled{cursor:default}.cleaning-photo img{object-fit:cover;width:100%;height:100%}.cleaning-photo span{padding:var(--sp-8);color:var(--muted);font-size:var(--fs-11)}.cleaning-photo figcaption{margin-top:var(--sp-4);color:var(--amber);font-size:var(--fs-11);text-align:center}.cleaning-photo-full{z-index:120;justify-content:center;align-items:center;gap:var(--sp-16);padding:var(--sp-24);background:#060a12f7;flex-direction:column;display:flex;position:fixed;inset:0}.cleaning-photo-full img{object-fit:contain;border-radius:var(--r-12);max-width:100%;max-height:78dvh}.cleaning-photo-full button{min-width:160px;min-height:48px;padding:var(--sp-12) var(--sp-16);border:1px solid var(--teal-light);border-radius:var(--r-12);color:var(--teal-bright);font-weight:700}.cleaning-detail-empty{color:var(--muted);font-size:var(--fs-12)}.dealer-collection-card{box-shadow:none}.dealer-collection-card .card-body{padding:var(--sp-12) var(--sp-16)}.dealer-collection-card .cleaning-card-content{gap:var(--sp-12);grid-template-columns:minmax(0,1fr)}.dealer-collection-status>strong{font-size:var(--fs-16);overflow-wrap:anywhere}.dealer-collection-status>strong.warning{color:var(--amber)}.dealer-collection-status>strong.alert{color:var(--alert)}.dealer-collection-when{font-weight:600;color:var(--text)!important;font-size:var(--fs-12)!important}.dealer-collection-note{font-style:italic;color:var(--muted)!important}.dealer-collection-card .cleaning-card-content .btn{justify-self:start;min-width:0}.dealer-collection-form{padding:var(--sp-4) var(--sp-16) var(--sp-16)}.dealer-collection-form .signin-form{margin-top:var(--sp-12)}.dealer-collection-form .signin-form input[type=date],.dealer-collection-form .signin-form input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;width:-webkit-fill-available;height:54px}.dealer-collection-form .signin-form .btn{margin-top:var(--sp-4)}.dealer-collection-form .signin-form .eyebrow{color:var(--muted)}.dealer-collection-summary{margin-top:var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);padding:var(--sp-16) var(--sp-16);gap:var(--sp-4);display:grid}.dealer-collection-summary strong{font-size:var(--fs-16);color:var(--teal-bright)}.dealer-collection-summary span{font-size:var(--fs-12);color:var(--soft);line-height:1.5}.dealer-collection-summary .pill{justify-self:start}.dealer-collection-manage{gap:var(--sp-12);margin-top:var(--sp-16);display:grid}.dealer-collection-manage .btn{width:100%}.dealer-collection-manage .btn+.btn{margin-top:0}.dealer-collection-message{margin-top:var(--sp-12);color:var(--alert);font-size:var(--fs-12);font-weight:600;line-height:1.5}.dealer-collection-help{margin-top:var(--sp-12);color:var(--muted);font-size:var(--fs-12);line-height:1.5}.admin-dealer-collections{padding:var(--sp-4) var(--sp-16) var(--sp-16)}.admin-dealer-collections>p{color:var(--muted);font-size:var(--fs-12);margin-bottom:var(--sp-12);line-height:1.5}.admin-dealer-collections .dealer-collection-manage{margin:0 0 var(--sp-16)}.dealer-collection-rows{gap:0;display:grid}.dealer-collection-row{gap:var(--sp-4);padding:var(--sp-12) var(--sp-16);margin-bottom:var(--sp-8);border:1px solid var(--line);border-radius:var(--r-12);background:var(--row);display:grid}.dealer-collection-row header{justify-content:space-between;align-items:center;gap:var(--sp-12);display:flex}.dealer-collection-row strong{font-size:var(--fs-14)}.dealer-collection-row span{color:var(--soft);font-size:var(--fs-12)}.dealer-collection-row small{color:var(--muted);font-size:var(--fs-12)}.dealer-collection-row-actions{gap:var(--sp-12);margin-top:var(--sp-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dealer-collection-row-actions .btn{width:100%;min-width:0}.dealer-collection-row-actions .btn+.btn{margin-top:0}@media (width<=375px){.cleaning-card-content{gap:var(--sp-8)}.cleaning-card-content .btn{min-width:104px;padding:var(--sp-8) var(--sp-12)}.cleaning-last>strong{font-size:var(--fs-14)}.cleaning-photo-actions{gap:var(--sp-8)}.cleaning-photo-actions .btn{padding:var(--sp-12) var(--sp-8);font-size:var(--fs-14)}}.dealer-collection-card-actions{gap:var(--sp-12);margin-top:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dealer-collection-card-actions .btn{width:100%;min-width:0;justify-self:stretch!important}.dealer-collection-card-actions .btn+.btn{margin-top:0}.dealer-collection-card-actions:has(>.btn:only-child){grid-template-columns:minmax(0,1fr)}.dealer-collection-local{font-weight:600;color:var(--amber)!important}.dealer-collection-freshness{line-height:1.45;display:block}.dealer-collection-freshness.warning{color:var(--amber)!important}.dealer-collection-freshness.alert{color:var(--alert)!important}.dealer-collection-card-help{color:var(--muted);font-size:var(--fs-12);line-height:1.5}.dealer-collection-dealer{font-size:var(--fs-16);color:var(--text);margin:var(--sp-4) 0 var(--sp-16);font-weight:600}.dealer-collection-dealer-helper{margin:calc(-1*var(--sp-12)) 0 var(--sp-16);color:var(--muted);font-size:var(--fs-12);line-height:1.5}.dealer-collection-collect{margin:0 0 var(--sp-16)}.dealer-collection-collect .btn{width:100%}.dealer-collection-confirm-head{margin-bottom:var(--sp-8)}.dealer-collection-confirm-screen .review-head{padding-top:0}.dealer-collection-confirm-head h1{font-size:var(--fs-21)}.dealer-collection-confirm-head p{color:var(--soft);margin-top:var(--sp-4);font-size:var(--fs-12)}.dealer-collection-freshness-card{margin:0 var(--sp-16) var(--sp-12)}.dealer-collection-tick{align-items:center;gap:var(--sp-12);margin-top:var(--sp-12);font-size:var(--fs-14);cursor:pointer;min-height:44px;font-weight:600;display:flex}.dealer-collection-tick-box{flex:0 0 28px;width:28px;height:28px;display:flex;position:relative}.dealer-collection-tick input{appearance:none;border:2px solid var(--line-control);cursor:pointer;background:0 0;border-radius:50%;flex:0 0 28px;width:28px;height:28px;margin:0}.dealer-collection-tick input:checked{background:var(--teal);border-color:var(--teal-light)}.dealer-collection-tick-box .icon{width:16px;height:16px;color:var(--text);pointer-events:none;margin:auto;position:absolute;inset:0}.dealer-collection-list{padding-bottom:var(--sp-4)}.dealer-collection-list .carcass-row.held{opacity:.72;cursor:default}.row-tick.row-tick-disabled{border-style:dashed;border-color:var(--line-soft);background:0 0}.row-hold{margin-top:var(--sp-4);font-size:var(--fs-12);color:var(--amber);font-weight:600;display:block}.hold-line{margin-top:var(--sp-8);font-size:var(--fs-12);color:var(--amber);min-height:24px;font-weight:600;text-decoration:none;display:block}.hold-card{border-color:var(--amber);background:#d9a0341a}.hold-card .btn+.btn{margin-top:var(--sp-8)}.hold-note-field{width:100%;min-height:80px;margin-top:var(--sp-8);border:1px solid var(--line-control);border-radius:var(--r-12);background:var(--surface-2);color:var(--text);padding:var(--sp-12) var(--sp-12);font:inherit;font-size:var(--fs-16)}.hold-note-field:focus{border-color:var(--teal-light);box-shadow:0 0 0 2px #22a5811f}.state-mark.pending{border-color:var(--amber);color:var(--amber);background:#d9a03429}.state-mark.attention{border-color:var(--alert);color:var(--alert);background:#d9544e24}.state-mark.ok{border-color:var(--teal-light);color:var(--teal-bright);background:#22a58129}.dealer-collection-receipt h1{font-size:var(--fs-18)}.dealer-collection-receipt .number{color:var(--teal-bright)}.dealer-collection-receipt-tags{font-size:var(--fs-14);color:var(--soft);overflow-wrap:anywhere}.dealer-collection-receipt-left{font-size:var(--fs-12);color:var(--muted);overflow-wrap:anywhere}.dealer-collection-rejections{margin:var(--sp-12) 0 0;gap:var(--sp-8);text-align:left;width:100%;padding:0;list-style:none;display:grid}.dealer-collection-rejections li{border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);padding:var(--sp-12) var(--sp-12);font-size:var(--fs-12);color:var(--soft);line-height:1.5}.dealer-collection-rejections li strong{color:var(--text);font-size:var(--fs-14)}.dealer-collection-recover-row{gap:var(--sp-4);padding:var(--sp-12) var(--sp-16);margin:0 var(--sp-16) var(--sp-8);border:1px solid var(--line);border-radius:var(--r-12);background:var(--row);display:grid}.dealer-collection-recover-row .tag{font-size:var(--fs-18)}.dealer-collection-recover-reason{font-size:var(--fs-12);color:var(--muted);line-height:1.45;display:block}.dealer-collection-recover-row.admin-only{opacity:.85;border-style:dashed}.link-button{color:var(--teal-bright);font:inherit;font-size:var(--fs-12);text-align:left;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;padding:0;font-weight:600}.dealer-collection-history-toggle{justify-self:start}.dealer-collection-history{gap:var(--sp-8);margin-top:var(--sp-8);display:grid}.dealer-collection-handover-history{gap:var(--sp-4);border:1px solid var(--line-soft);border-radius:var(--r-8);background:var(--surface-2);padding:var(--sp-12) var(--sp-12);display:grid}.dealer-collection-handover-history strong{font-size:var(--fs-12);color:var(--text)}.dealer-collection-handover-history span{font-size:var(--fs-12);overflow-wrap:anywhere;line-height:1.45}.dealer-collection-handover-history .btn{margin-top:var(--sp-8);justify-self:start}.dealer-collection-row-actions-inline{display:contents}.dealer-collection-attach-list{gap:var(--sp-8);margin-top:var(--sp-12);display:grid}.dealer-collection-attach-row{align-items:flex-start;gap:var(--sp-12);border:1px solid var(--line);border-radius:var(--r-12);background:var(--surface-2);padding:var(--sp-12) var(--sp-12);min-height:44px;display:flex}.dealer-collection-attach-row:has(input:checked){border-color:var(--teal-light)}.dealer-collection-attach-row input{appearance:none;border:2px solid var(--line-control);cursor:pointer;background:0 0;border-radius:50%;flex:0 0 28px;width:28px;height:28px;margin:0}.dealer-collection-attach-row input:checked{background:var(--teal);border-color:var(--teal-light);box-shadow:inset 0 0 0 4px var(--surface-2)}.dealer-collection-attach-row>span{gap:var(--sp-4);min-width:0;display:grid}.dealer-collection-attach-row>span>span{font-size:var(--fs-12);color:var(--soft);overflow-wrap:anywhere}:is(a,button,input,select,textarea,summary):focus-visible,.signin-form :is(input,textarea):focus-visible,.admin-field:focus-visible{outline:2px solid var(--teal-bright);outline-offset:2px;scroll-margin:4px}.carcass-row:focus-visible,.detail-row:focus-visible,.member-row:focus-visible,.cleaning-history-row:focus-visible,.cleaning-photo-previews button:focus-visible,.segmented button:focus-visible{outline-offset:-4px}.btn,button.key,button.icon-button,.feed-remove{transition:transform var(--t-press) ease-out,filter var(--t-press) ease-out,background-color var(--t-press) ease-out}button.carcass-row,button.detail-row,.route-button,button.option,button.member-row,button.cleaning-history-row,.notification-history-row summary{transition:background-color var(--t-press) ease-out}.btn:not(:disabled):not(.disabled):not([aria-busy=true]):active,button.key:not(:disabled):active,button.icon-button:not(:disabled):active,.feed-remove:not(:disabled):active{filter:brightness(1.12);transform:scale(.97)}.btn.primary:not(.account-action):not(:disabled):not(.disabled):not([aria-busy=true]):active{background:var(--teal-light)}button.carcass-row:not(.held):not([aria-disabled=true]):active,button.detail-row:active,.route-button:active,button.option:not(:disabled):active,button.member-row:not(:disabled):active,button.cleaning-history-row:not(:disabled):active,.notification-history-row summary:active{background:var(--surface-2)}.who-badge:not(:disabled):active,.link-button:not(:disabled):active,.option-cancel:active,.notification-edit:not(:disabled):active,.current-carcasses-sort:not(:disabled):active,.cleaning-history-link:active,.disclosure-button:not(:disabled):active,.torch-button:not(:disabled):active,button.tag-photo:not(:disabled):active,.hold-line:active,.site-access-basemap-selector button:not(:disabled):active,.segmented button:active,.feedback-attachment-preview button:active,.admin-detail-link:active{opacity:.72}button:not([class*=maplibregl-]),.btn,.carcass-row,button.detail-row,.route-button,.keypad-grid,.keypad-actions,.sheet-actions,button.option,.outlet-labels{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html,body{overscroll-behavior-y:none}@media print{@page{margin:16mm}html:has(.door-qr-screen){background:var(--qr-paper);height:auto;color:var(--qr-ink);overflow:visible}html:has(.door-qr-screen) body{background:var(--qr-paper);height:auto;color:var(--qr-ink);overflow:visible}html:has(.door-qr-screen) #root{background:var(--qr-paper);height:auto;color:var(--qr-ink);overflow:visible}html:has(.door-qr-screen) body{background-image:none}.app-shell:has(>.door-qr-screen){max-width:none;height:auto;display:block;overflow:visible}.door-qr-screen>:not(.door-qr-scroll),.door-qr-scroll>:not(.door-qr-print){display:none}body:has(.door-qr-screen)>:not(#root){display:none}.app-shell:has(>.door-qr-screen)>:not(.door-qr-screen){display:none}.door-qr-screen,.door-qr-scroll{height:auto;padding:0;display:block;overflow:visible}.door-qr-print{gap:var(--sp-24);break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0;margin:0;padding:0}.door-qr-title{font-size:var(--fs-44)}.door-qr-code{width:120mm}.door-qr-caption{font-size:var(--fs-28)}.door-qr-url{font-size:var(--fs-18)}}@media (prefers-reduced-motion:reduce){:root{--t-press:0s;--t-sheet:0s;--t-scrim:0s;--t-row:0s}.location-gate-pulse{animation:none}.site-access-toggle input:after{transition-property:background-color}.sheet,.sheet-scrim,.undo-bar{animation:none}.btn:not(:disabled):not(.disabled):not([aria-busy=true]):active,button.key:not(:disabled):active,button.icon-button:not(:disabled):active,.feed-remove:not(:disabled):active{transform:none}.btn[aria-busy=true]:not(.directional-action)>span:first-child:before{animation:none}}:root{--bg:#0c1320;--surface:#161f2d;--surface-2:#1b2533;--row:#19222f;--line:#26303f;--line-soft:#202a38;--line-control:#6b7686;--text:#fff;--muted:#8a94a3;--soft:#c2cad4;--teal:#12785c;--teal-light:#1a9b7a;--teal-bright:#22a581;--teal-dark:#0e5a47;--amber:#c9903f;--alert:#d9544e;--card-head-top:#1a2330;--view-glow:#1f2a38;--view-mid:#121a26;--view-deep:#0a1018;--action-icon:#f4fffb;--action-icon-neutral:#eef3f8;--tag-photo-light:#d6dbe0;--tag-photo-dark:#8b959b;--location-action:#7eb6d9;--location-action-line:#5e93c4;--qr-ink:#000;--qr-paper:#fff;--fs-11:11px;--fs-12:12.5px;--fs-14:14px;--fs-16:16px;--fs-18:18px;--fs-21:21px;--fs-28:28px;--fs-44:44px;--r-8:8px;--r-12:12px;--r-16:16px;--sp-4:4px;--sp-8:8px;--sp-12:12px;--sp-16:16px;--sp-24:24px;--shadow:0 1px 2px #0006,0 14px 40px #0006;--t-press:80ms;--t-sheet:.22s;--t-scrim:.18s;--t-row:.15s;--ease-out:cubic-bezier(.2,.8,.2,1);--top:env(safe-area-inset-top,0px);--bot:env(safe-area-inset-bottom,0px)}
