/* /Components/Controls/AutomaticScanResultDialog.razor.rz.scp.css */
.automatic-result[b-h1my617pp0]  .automatic-front { fill: #14b8a612; stroke: #14b8a6; stroke-width: .5; vector-effect: non-scaling-stroke; }
.automatic-result[b-h1my617pp0]  .detected-gap-overlay .shelf-gap, .automatic-result[b-h1my617pp0]  .missing-shelf-overlay .estimated-gap { stroke-width: .5; }
/* /Components/Controls/DetectedGapOverlay.razor.rz.scp.css */
.shelf-gap[b-au069shy7k] { fill: #ef4444; fill-opacity: .2; stroke: #ef4444; stroke-width: 3; vector-effect: non-scaling-stroke; }
.shelf-gap.selected-gap[b-au069shy7k] { fill: #f59e0b; fill-opacity: .3; stroke: #f59e0b; stroke-width: 4; }
/* /Components/Controls/MissingShelfOverlay.razor.rz.scp.css */
.estimated-gap[b-k5wsrtfeid] { fill: #ef4444; fill-opacity: .2; stroke: #ef4444; stroke-width: .5; vector-effect: non-scaling-stroke; }
.estimated-gap.selected[b-k5wsrtfeid] { fill-opacity: .35; }
.estimated-row[b-k5wsrtfeid] { fill: #f59e0b; fill-opacity: .12; stroke: #fbbf24; stroke-width: 2; stroke-dasharray: 8 5; vector-effect: non-scaling-stroke; }
.estimated-row.selected[b-k5wsrtfeid] { fill-opacity: .3; stroke: #fff3b0; stroke-width: 4; }
.estimated-gap + .estimated-row[b-k5wsrtfeid] { fill-opacity: 0; }
text[b-k5wsrtfeid] { fill: #fff3b0; stroke: #18232d; stroke-width: 2; paint-order: stroke; font-family: system-ui, sans-serif; font-weight: 600; }
/* /Components/Controls/PhotoCropEditor.razor.rz.scp.css */
.crop-image[b-h73qreprnu] { position: relative; display: table; max-width: 100%; margin: 12px auto; overflow: hidden; touch-action: none; cursor: crosshair; user-select: none; }
.crop-image img[b-h73qreprnu] { display: block; max-width: 100%; max-height: min(72vh, 850px); width: auto; height: auto; pointer-events: none; }
.crop-mask[b-h73qreprnu] { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
/* /Components/Controls/PhotoViewer.razor.rz.scp.css */
.photo-viewport[b-dp2i1nvo1o] { position: relative; width: 100%; height: 100%; min-height: 420px; overflow: hidden; background: #18232d; touch-action: none; cursor: crosshair; }
.photo-stage[b-dp2i1nvo1o] { position: absolute; top: 0; left: 0; transform-origin: 0 0; user-select: none; }
.photo-stage img[b-dp2i1nvo1o] { display: block; width: 100%; height: 100%; pointer-events: none; }
.photo-overlay[b-dp2i1nvo1o] { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; }
.photo-viewport[b-dp2i1nvo1o]  .viewer-hint { position: absolute; left: 15px; top: 15px; z-index: 1; }
.photo-viewport[b-dp2i1nvo1o]  .viewer-feedback { position: absolute; right: 8px; top: 8px; z-index: 4; pointer-events: none; max-width: 65%; }
.photo-viewport[b-dp2i1nvo1o]  .viewer-error { position: absolute; top: 65px; right: 8px; max-width: 85%; z-index: 5; }
.photo-viewport[b-dp2i1nvo1o]  .viewer-error pre { max-height: 200px; }
.shelf-label-layer[b-dp2i1nvo1o] { position: absolute; inset: 0 auto 0 0; z-index: 2; background: #18232df5; border-right: 1px solid #354454; }
.shelf-label[b-dp2i1nvo1o] { position: absolute; left: 8px; display: flex; align-items: center; gap: 6px; padding: 3px 6px; box-sizing: border-box; border: 1px solid #fbbf2480; border-radius: 4px; color: #fef3c7; background: #263443; font: 12.5px system-ui, sans-serif; cursor: default; }
.shelf-label[hidden][b-dp2i1nvo1o] { display: none; }
.shelf-label span[b-dp2i1nvo1o] { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.shelf-label.active[b-dp2i1nvo1o] { border-color: #fbbf24; background: #70521b; color: #fff; }
.shelf-connectors[b-dp2i1nvo1o] { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 3; pointer-events: none; }
.shelf-arrow[b-dp2i1nvo1o] { fill: none; stroke: #fbbf24; stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.shelf-arrow.active[b-dp2i1nvo1o] { stroke-width: 3; }
/* /Components/Controls/PlanogramViewer.razor.rz.scp.css */
.planogram-viewport[b-o4r6l08fha] { width: 100%; height: var(--analysis-viewer-height, clamp(420px, 60vh, 850px)); overflow: hidden; background: var(--mud-palette-background-gray); }
.planogram-viewport svg[b-o4r6l08fha] { display: block; width: 100%; height: 100%; }
.structure[b-o4r6l08fha] { fill: #c9d1da; stroke: #9aabbc; stroke-width: 1; opacity: .6; }
.row-frame[b-o4r6l08fha] { fill: transparent; stroke: #64748b; stroke-width: 2; stroke-dasharray: 6 4; pointer-events: none; }
.row-frame.current[b-o4r6l08fha] { stroke: #2563eb; stroke-width: 3; }
.slot[b-o4r6l08fha] { cursor: pointer; }
.slot rect[b-o4r6l08fha] { fill: #b7d2e7; stroke: #3f6181; stroke-width: 1; }
.slot:nth-of-type(even) rect[b-o4r6l08fha] { fill: #d0e4ef; }
.slot.selected rect[b-o4r6l08fha] { fill: #ffd27d; stroke: #ad6900; stroke-width: 3; }
[b-o4r6l08fha] .slot text { fill: #1e293b; pointer-events: none; }
/* /Components/Controls/SettingHelp.razor.rz.scp.css */
.setting-with-help[b-4vy0hau53f], .setting-with-help[b-4vy0hau53f]  .setting-control { min-width: 0; }
/* MudBlazor also reads the anchor's z-index during viewport/appbar repositioning. */
.setting-help-anchor[b-4vy0hau53f]  .mud-popover-cascading-value { z-index: var(--setting-help-z, 1401); }
.setting-help-card[b-4vy0hau53f] { width: min(420px, calc(100vw - 32px)); max-height: min(650px, 78dvh); overflow-y: auto; overscroll-behavior: contain; overflow-wrap: anywhere; }
/* /Components/Controls/SettingHelpDiagram.razor.rz.scp.css */
.help-diagram[b-eb8qolkpjn] { margin: 12px 0; padding: 8px; border: 1px solid #dbe3ec; border-radius: 6px; background: #f8fafc; }
svg[b-eb8qolkpjn] { display: block; width: 100%; height: auto; }
text[b-eb8qolkpjn] { fill: #334155; font: 12px system-ui, sans-serif; }
.product[b-eb8qolkpjn] { fill: #dcfce7; stroke: #15803d; stroke-width: 2; }
.plan[b-eb8qolkpjn] { fill: #dbeafe; stroke: #2563eb; stroke-width: 2; }
.muted[b-eb8qolkpjn] { fill: #e2e8f0; stroke: #94a3b8; stroke-width: 1; }
.missing[b-eb8qolkpjn] { fill: #fee2e2; stroke: #dc2626; stroke-width: 2; stroke-dasharray: 5 3; }
.estimated[b-eb8qolkpjn] { stroke: #b45309; }
.comparison[b-eb8qolkpjn] { fill: #3b82f626; stroke: #2563eb; stroke-width: 2; stroke-dasharray: 4 3; }
.arrow[b-eb8qolkpjn], .shelf[b-eb8qolkpjn] { fill: none; stroke: #475569; stroke-width: 2; }
.guide[b-eb8qolkpjn] { fill: none; stroke: #2563eb; stroke-width: 2; stroke-dasharray: 4 3; }
.center[b-eb8qolkpjn] { fill: #2563eb; }
.cross[b-eb8qolkpjn] { fill: none; stroke: #64748b; stroke-width: 2; }
figcaption[b-eb8qolkpjn] { color: #526579; font-size: .73rem; line-height: 1.4; margin-top: 6px; }
/* /Components/Controls/ShelfCamera.razor.rz.scp.css */
.shelf-camera[b-f1y5b7aecm] { position: relative; width: 100%; height: 100%; min-height: 320px; overflow: hidden; background: #111; }
.camera-viewport[b-f1y5b7aecm] { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.camera-viewport[b-f1y5b7aecm] { overflow: hidden; touch-action: none; }
.shelf-camera[b-f1y5b7aecm]  .camera-actions .mud-button-root, .shelf-camera[b-f1y5b7aecm]  .camera-zoom .mud-button-root { opacity: .75; }
.shelf-camera[b-f1y5b7aecm]  .camera-zoom { position: absolute; top: 72px; left: 12px; z-index: 6; }
.settings-open .camera-products rect[b-f1y5b7aecm] { pointer-events: none; }
.settings-open .camera-products[b-f1y5b7aecm]  * { pointer-events: none; }
.settings-open .camera-products rect[role="button"][b-f1y5b7aecm] { stroke-opacity: .3; fill: transparent; }
.settings-open .camera-products[b-f1y5b7aecm]  .shelf-gap, .settings-open .camera-products[b-f1y5b7aecm]  .estimated-gap, .settings-open .camera-products[b-f1y5b7aecm]  .estimated-row, .settings-open .camera-products[b-f1y5b7aecm]  text { opacity: .08; }
.camera-handles[b-f1y5b7aecm] { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 7; pointer-events: none; overflow: visible; }
.camera-handles[b-f1y5b7aecm]  .crop-handle-hit { fill: transparent; pointer-events: all; cursor: move; touch-action: none; }
.camera-handles[b-f1y5b7aecm]  .crop-handle-dot { fill: white; stroke: #f59e0b; stroke-width: 2; pointer-events: none; }
.crop-dragging[b-f1y5b7aecm]  .mud-button-root { visibility: hidden; pointer-events: none; }
.camera-stage[b-f1y5b7aecm] { position: relative; flex: none; touch-action: none; user-select: none; }
.camera-stage video[b-f1y5b7aecm], .camera-stage img[b-f1y5b7aecm], .camera-mask[b-f1y5b7aecm], .camera-products[b-f1y5b7aecm] { position: absolute; inset: 0; width: 100%; height: 100%; }
.camera-stage img[b-f1y5b7aecm] { display: none; }
.camera-mask[b-f1y5b7aecm] { pointer-events: none; }
.shelf-camera[b-f1y5b7aecm]  .camera-block-caption { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); z-index: 3; max-width: calc(100% - 24px); width: max-content; text-align: center; color: white; background: rgba(0, 0, 0, .85); pointer-events: none; }
.camera-products[b-f1y5b7aecm] { pointer-events: none; }
.shelf-label-layer[b-f1y5b7aecm] { position: absolute; inset: 0 auto 0 0; z-index: 2; background: #18232df5; border-right: 1px solid #354454; pointer-events: none; }
.shelf-label[b-f1y5b7aecm] { position: absolute; left: 8px; display: flex; align-items: center; gap: 6px; padding: 3px 6px; box-sizing: border-box; border: 1px solid #fbbf2480; border-radius: 4px; color: #fef3c7; background: #263443; font: 12.5px system-ui, sans-serif; }
.shelf-label[hidden][b-f1y5b7aecm] { display: none; }
.shelf-label span[b-f1y5b7aecm] { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.shelf-connectors[b-f1y5b7aecm] { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 3; pointer-events: none; }
.shelf-arrow[b-f1y5b7aecm] { fill: none; stroke: #fbbf24; stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.shelf-camera[b-f1y5b7aecm]  .automatic-status { position: absolute; bottom: 12px; left: 12px; right: 12px; z-index: 4; max-height: 35%; overflow: auto; }
.shelf-camera[b-f1y5b7aecm]  .automatic-gallery { width: 100%; min-width: 0; }
.shelf-camera[b-f1y5b7aecm]  .automatic-pause { flex: 0 0 62px; }
.shelf-camera[b-f1y5b7aecm]  .automatic-frames { flex: 1 1 0; min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; padding-bottom: 8px; }
.shelf-camera[b-f1y5b7aecm]  .automatic-frame { flex: 0 0 96px; min-width: 0; overflow-wrap: anywhere; }
.shelf-camera[b-f1y5b7aecm]  .automatic-thumbnail { position: relative; width: 100%; min-width: 0; height: 76px; overflow: hidden; }
.shelf-camera[b-f1y5b7aecm]  .automatic-thumbnail img { width: 100%; height: 76px; }
.shelf-camera[b-f1y5b7aecm]  .automatic-empty { filter: grayscale(1); }
.shelf-camera[b-f1y5b7aecm]  .automatic-empty-icon { position: absolute; top: 4px; right: 4px; background: white; border-radius: 50%; }
.camera-products rect[b-f1y5b7aecm] { pointer-events: all; cursor: pointer; fill: #14b8a612; stroke: #14b8a6; stroke-width: .5; vector-effect: non-scaling-stroke; }
.shelf-camera .camera-products[b-f1y5b7aecm]  .shelf-gap, .shelf-camera .camera-products[b-f1y5b7aecm]  .estimated-gap { stroke-width: .5; }
.camera-products rect:hover[b-f1y5b7aecm], .camera-products rect:focus[b-f1y5b7aecm] { fill: #14b8a655; stroke: white; outline: none; }
.shelf-camera[b-f1y5b7aecm]  .camera-actions { position: absolute; inset: 12px 12px auto; z-index: 6; pointer-events: none; }
.shelf-camera[b-f1y5b7aecm]  .camera-actions .mud-icon-button { pointer-events: auto; }
.shelf-camera[b-f1y5b7aecm]  .camera-actions .mud-input-control { margin: 0; }
.shelf-camera[b-f1y5b7aecm]  .camera-message { position: absolute; left: 12px; right: 12px; bottom: 12px; z-index: 4; }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-2e6xk0xhhk] {
    bottom: 0;
    display: none;
    left: 0;
    position: fixed;
    width: 100%;
    z-index: var(--mud-zindex-snackbar);
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
#components-reconnect-modal[b-8j0jztc4hc]  .components-reconnect-first-attempt-visible,
#components-reconnect-modal[b-8j0jztc4hc]  .components-reconnect-repeated-attempt-visible,
#components-reconnect-modal[b-8j0jztc4hc]  .components-reconnect-failed-visible,
#components-reconnect-modal[b-8j0jztc4hc]  .components-pause-visible,
#components-reconnect-modal[b-8j0jztc4hc]  .components-resume-failed-visible,
#components-reconnect-modal[b-8j0jztc4hc]  .components-rejoining-animation {
    display: none;
}

#components-reconnect-modal.components-reconnect-show[b-8j0jztc4hc]  .components-reconnect-first-attempt-visible,
#components-reconnect-modal.components-reconnect-show[b-8j0jztc4hc]  .components-rejoining-animation,
#components-reconnect-modal.components-reconnect-paused[b-8j0jztc4hc]  .components-pause-visible,
#components-reconnect-modal.components-reconnect-resume-failed[b-8j0jztc4hc]  .components-resume-failed-visible,
#components-reconnect-modal.components-reconnect-retrying[b-8j0jztc4hc]  .components-reconnect-repeated-attempt-visible,
#components-reconnect-modal.components-reconnect-retrying[b-8j0jztc4hc]  .components-rejoining-animation,
#components-reconnect-modal.components-reconnect-failed[b-8j0jztc4hc]  .components-reconnect-failed-visible {
    display: block;
}


#components-reconnect-modal[b-8j0jztc4hc] {
    width: min(28rem, calc(100vw - 2rem));
    margin: 20vh auto;
    border: 0;
}

#components-reconnect-modal[b-8j0jztc4hc]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
}
/* /Components/Pages/Scan.razor.rz.scp.css */
.scan-page[b-7egmvgq3hu] { height: var(--scan-page-height, calc(100dvh - var(--mud-appbar-height, 64px) - 32px)); min-height: 0; }
.scan-page[b-7egmvgq3hu]  .scan-workspace { height: 100%; min-height: 0; }
.scan-page[b-7egmvgq3hu]  .scan-blocks { flex: none; }
.scan-capture[b-7egmvgq3hu] { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.scan-slots[b-7egmvgq3hu] { flex: none; min-height: 0; }
.scan-page[b-7egmvgq3hu]  .scan-slots .mud-simple-table { max-height: max(64px, calc(var(--scan-page-height, 100dvh) * .45 - 132px)); }
.scan-page[b-7egmvgq3hu]  .scan-header { flex: none; max-height: min(32dvh, max(64px, calc(var(--scan-page-height, 100dvh) * .2 - 40px))); overflow-y: auto; }
.scan-page[b-7egmvgq3hu]  .block-button { min-width: 0; }
.scan-page[b-7egmvgq3hu]  .scan-camera { flex: 1 1 0; min-height: 0; overflow: hidden; }
.scan-page[b-7egmvgq3hu]  .shelf-camera { min-height: 0; }
/* /Components/Views/RetailMonitorAnalysis.razor.rz.scp.css */
.retail-product[b-juv5p42tpx] { fill: #22c55e; fill-opacity: .07; stroke: #22c55e; stroke-width: 2; vector-effect: non-scaling-stroke; }
.retail-product.selected-product[b-juv5p42tpx] { fill: #f59e0b; fill-opacity: .3; stroke: #f59e0b; stroke-width: 4; }
/* /Components/Views/ShelfSetAnalysis.razor.rz.scp.css */
.shelfset-product[b-2dbklcvok6] { fill: #0891b2; fill-opacity: .07; stroke: #0891b2; stroke-width: 2; vector-effect: non-scaling-stroke; }
.shelfset-product.selected-product[b-2dbklcvok6] { fill: #f59e0b; fill-opacity: .3; stroke: #f59e0b; stroke-width: 4; }
