/* Independent supplier guide. No global product styles or analytical state changes. */
.supplier-tour[hidden],.supplier-tour [hidden]{display:none!important}
.supplier-tour{--tour-paper:#fffaf2;--tour-ink:#24221f;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;color:var(--tour-ink);pointer-events:none;z-index:2147483000;font-family:inherit}
.supplier-tour::backdrop{background:transparent;pointer-events:none}
.supplier-tour-shade{position:fixed;background:rgba(20,18,15,.66);pointer-events:auto;touch-action:none}
.supplier-tour-ring{position:fixed;border:2px solid #ffb14b;border-radius:9px;box-shadow:0 0 0 4px rgba(255,177,75,.23);pointer-events:none}
.supplier-tour-card{position:fixed;width:390px;max-width:calc(100vw - 24px);background:var(--tour-paper);border:1px solid #bfb3a3;border-top:4px solid #f99c2a;border-radius:10px;box-shadow:0 16px 60px #0005;pointer-events:auto;display:flex;flex-direction:column;overflow:hidden;text-align:left}
.supplier-tour-card.is-welcome{width:610px}
.supplier-tour-head{padding:21px 24px 12px;flex:none}
.supplier-tour-eyebrow{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:#71604b}
.supplier-tour-close{border:0;background:transparent;font:inherit;font-size:24px;line-height:1;min-width:32px;min-height:32px;color:#40392e;cursor:pointer;border-radius:4px}
.supplier-tour-title{font-size:23px!important;line-height:1.18!important;letter-spacing:-.5px;margin:9px 0 0!important;font-weight:800!important;color:#24221f!important;text-transform:none!important}
.supplier-tour-progress{height:3px;background:#e4d9c8;margin-top:15px;overflow:hidden;border-radius:2px}
.supplier-tour-progress span{display:block;height:100%;background:#e78b1e;transition:width .2s}
.supplier-tour-copy{overflow:auto;overscroll-behavior:contain;padding:0 24px 8px;font-size:14px;line-height:1.55;color:#514a41;scrollbar-width:thin}
.supplier-tour-copy p{margin:0 0 12px}.supplier-tour-copy b{color:#24221f}.supplier-tour-copy ul{padding-left:19px;margin:0 0 14px}.supplier-tour-copy li{margin-bottom:7px}.supplier-tour-copy a{color:#2457b5;text-decoration:underline}
.supplier-tour-note{background:#f3eadc;border-left:3px solid #c88b36;padding:10px 12px;font-size:12px}
.supplier-tour-footer{padding:14px 24px 17px;border-top:1px solid #e2d7c6;display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:none;background:var(--tour-paper)}
.supplier-tour-footer button,.supplier-tour-resume button{font:inherit;font-size:13px;font-weight:700;min-height:42px;padding:9px 13px;border:1px solid #a89e8d;border-radius:5px;cursor:pointer;background:#fffaf2;color:#30291f}
.supplier-tour-footer .supplier-tour-next{background:#2eed38;color:#163319;border-color:#159b26;margin-left:auto}
.supplier-tour-footer button:disabled{opacity:.4;cursor:default}.supplier-tour-skip{flex-basis:100%;font-size:12px!important;text-align:left;text-decoration:underline;background:transparent!important;border:0!important;padding:4px 0!important;min-height:30px!important;color:#716553!important}
.supplier-tour-hint{font-size:11px;color:#796a56;margin:0;padding:0 24px 12px}
.supplier-tour-pointer{position:fixed;width:56px;height:64px;pointer-events:none;filter:drop-shadow(0 3px 3px #0006);animation:supplier-tour-point 2.8s ease-in-out infinite;transform-origin:10px 10px}
.supplier-tour-pointer svg{width:48px;height:48px;stroke:#fff;stroke-width:2;fill:#b540eb}
.supplier-tour-pointer span{display:block;width:max-content;background:#7921a5;color:#fff;font-size:10px;font-weight:800;letter-spacing:.7px;padding:3px 7px;border:1px solid #fff;border-radius:4px;margin-top:-8px}
.supplier-tour-pointer:before{content:'';position:absolute;left:-4px;top:-4px;width:24px;height:24px;border:3px solid #df8cff;border-radius:50%;animation:supplier-tour-click 2.8s ease-out infinite}
@keyframes supplier-tour-point{0%,15%{transform:translate(20px,22px) rotate(-8deg)}40%,55%{transform:translate(0,0) rotate(0)}62%{transform:scale(.87)}72%,100%{transform:scale(1)}}
@keyframes supplier-tour-click{0%,54%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(.7)}84%,100%{opacity:0;transform:scale(2)}}
.supplier-tour-resume{position:fixed;bottom:16px;right:16px;max-width:calc(100vw - 32px);pointer-events:auto;background:#fffaf2;color:#30291f;padding:12px 16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #c2af95;border-top:3px solid #f99c2a;border-radius:7px;box-shadow:0 8px 35px #0004;font-size:13px}
.supplier-tour-resume button{background:#2eed38;color:#163319;border-color:#159b26}
.supplier-help{position:relative;flex:none}.supplier-help>button{display:flex;align-items:center;gap:7px;min-height:44px;border:1px solid #7a7063;border-radius:5px;background:#292724;color:#fffaf2;padding:9px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.supplier-help-menu{position:absolute;right:0;top:calc(100% + 10px);width:270px;max-width:calc(100vw - 24px);padding:10px;background:#fffaf2;color:#24221f;border:1px solid #b7ab98;border-radius:7px;box-shadow:0 8px 24px #0003;z-index:10000}.supplier-help-menu[hidden]{display:none}.supplier-help-menu button,.supplier-help-menu a{display:block;width:100%;text-align:left;font:inherit;font-size:13px;padding:11px;border:0;border-radius:4px;background:transparent;color:inherit;text-decoration:none;cursor:pointer}.supplier-help-menu button:hover,.supplier-help-menu a:hover{background:#f1e7d7}
.supplier-tour :focus-visible,.supplier-help :focus-visible{outline:3px solid #386fea!important;outline-offset:3px!important}
body.supplier-tour-running{scroll-behavior:auto!important}
@media(max-width:700px){.supplier-tour-card{width:calc(100vw - 24px);border-radius:9px}.supplier-tour-head{padding:12px 16px 8px}.supplier-tour-title{font-size:19px!important}.supplier-tour-copy{padding:0 16px 6px;font-size:13px}.supplier-tour-footer{padding:10px 16px;gap:5px}.supplier-tour-footer button{min-height:44px}.supplier-tour-hint{padding:0 16px 8px}.supplier-tour-progress{margin-top:9px}.supplier-help>button{padding:8px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.supplier-tour-pointer,.supplier-tour-pointer:before{animation:none!important}.supplier-tour-pointer:before{display:none}.supplier-tour-progress span{transition:none}}
/* Give real modal controls their own space alongside the guide. */
.supplier-tour-title:focus{outline:none!important}
body.supplier-tour-running dialog.context-dialog[open]{position:fixed;inset:20px auto auto 20px;margin:0;width:calc(100vw - 450px);max-width:none;max-height:calc(100dvh - 40px)}
body.supplier-tour-running dialog.context-dialog>.dialog-card{max-height:calc(100dvh - 40px);scroll-padding:20px}
body.supplier-tour-running dialog.context-dialog .searchable-dropdown-panel{position:static;margin-top:6px}
@media(max-width:1049px){body.supplier-tour-running dialog.context-dialog[open]{inset:12px 12px auto;margin:0;width:calc(100vw - 24px);max-height:calc(52dvh - 24px)}body.supplier-tour-running dialog.context-dialog>.dialog-card{max-height:calc(52dvh - 24px);padding:16px}body.supplier-tour-running dialog.context-dialog .dialog-actions{bottom:-16px;margin:12px -16px -16px;padding:10px 16px;flex-wrap:wrap}body.supplier-tour-running dialog.context-dialog .dialog-actions button{min-width:0!important;flex:1;font-size:11px}body.supplier-tour-running dialog.context-dialog .check-grid{grid-template-columns:1fr 1fr}}
.supplier-tour-copy.has-more{background:linear-gradient(#fffaf2 30%,#fffaf200) center top,linear-gradient(#fffaf200,#fffaf2 70%) center bottom,linear-gradient(#c8b99f66,#c8b99f00) center top,linear-gradient(#c8b99f00,#c8b99f66) center bottom;background-size:100% 28px,100% 28px,100% 9px,100% 9px;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll;scrollbar-color:#b8a68b #f2e9dc}

/* A reserved rail avoids cutting a spotlight at the guide card's edge. */
html:has(body.supplier-tour-running){scroll-behavior:auto!important}
body.supplier-tour-running *{scroll-behavior:auto!important}
@media(min-width:1050px){body.supplier-tour-running .app-shell{width:calc(100% - 420px);max-width:none;margin-left:0;margin-right:420px}.supplier-tour-card{max-height:calc(100dvh - 32px)}}
.supplier-tour-hint:empty{display:none}.supplier-tour-copy{font-size:14px}.supplier-tour-footer{padding-top:10px;padding-bottom:10px}.supplier-tour-skip{min-height:22px!important}
.supplier-tour-footer .supplier-tour-skip{flex-basis:auto!important;background:#ece9e4!important;border:1px solid #b4ada2!important;border-radius:5px!important;color:#393630!important;text-decoration:none!important;text-align:center!important;padding:9px 13px!important;min-height:42px!important}
.supplier-tour-card.is-welcome .supplier-tour-footer{display:grid;grid-template-columns:1fr 1fr}.supplier-tour-card.is-welcome .supplier-tour-next,.supplier-tour-card.is-welcome .supplier-tour-skip{width:100%;margin:0;min-height:48px!important}
.supplier-tour-help-link,.supplier-tour-options button{font:inherit;font-weight:700;font-size:13px;border:1px solid #b4ada2;border-radius:5px;background:#ece9e4;color:#393630;padding:7px 10px;cursor:pointer}.supplier-tour-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.supplier-tour-segments li{margin-bottom:8px}.supplier-tour.is-whole-panel .supplier-tour-ring{border-color:#c8b99f;box-shadow:none}

.info-heading-group > h2,.info-heading-group > .section-description{display:inline!important}

.supplier-tour-copy .supplier-tour-inline-info{margin:0 3px;vertical-align:middle;line-height:1;cursor:default}

.supplier-tour-hint[role="alert"]{color:#b42318;background:#fff0ed;border-left:3px solid #d92d20;font-weight:700;margin:0 20px 12px;padding:10px 12px;border-radius:4px;font-size:13px;animation:supplier-tour-alert .25s ease-out}
@keyframes supplier-tour-alert{from{background:#ffd5ce}to{background:#fff0ed}}
@media(prefers-reduced-motion:reduce){.supplier-tour-hint[role="alert"]{animation:none}}

.supplier-tour-shade{z-index:0}.supplier-tour-ring{z-index:1}.supplier-tour-card{z-index:2}.supplier-tour-pointer{z-index:3}.supplier-tour-resume{z-index:4}

.supplier-tour-footer .supplier-tour-next:hover,.supplier-tour-resume button:hover{background:#25d930}.supplier-tour-footer .supplier-tour-next:active,.supplier-tour-resume button:active{background:#20c82b}

/* The final overview offers choices without directing the user away from monitoring. */
.supplier-tour:has([data-tour-catalog]) .supplier-tour-pointer{display:none!important;animation:none!important}

/* Information stays attached to the label, including wrapping headings. */
.info-heading-group{display:block;min-width:0;max-width:100%}
body :is(.map-info-button,.poi-field-info-button,.poi-info-button,.analysis-info){display:inline-grid;place-items:center;box-sizing:border-box;width:16px;height:16px;min-width:16px;min-height:16px;flex:0 0 16px;padding:0;border:1px solid #888;border-radius:50%;background:transparent;color:#666;font-family:Arial,sans-serif;font-size:11px;font-weight:600;font-style:normal;line-height:1;letter-spacing:0;text-transform:none;text-align:center;vertical-align:super;margin:0 0 0 6px;transform:none}
body .major-section-heading h2 sup{display:inline;vertical-align:baseline;margin:0;transform:none}
body .major-section-heading h2 sup .map-info-button{margin-left:6px}
body .location-technical-line sup{vertical-align:baseline}
body .analysis-mode-controls .control-label .analysis-info{width:16px;height:16px;align-self:center;transform:translateY(-3px);padding:0;font-size:11px;line-height:1;margin-left:0}
body .poi-media-filter-group>header{justify-content:flex-start;gap:0}
body .poi-media-filter-group>header .poi-field-info-button{align-self:flex-start;transform:translateY(-3px)}
body .poi-vision-action .poi-info-button{align-self:flex-start;margin-top:2px}
@media(max-width:720px){.info-heading-group{display:inline-flex;align-items:flex-start;gap:6px}.info-heading-group>:first-child{min-width:0}body .info-heading-group>[data-supplier-segment]{margin:2px 0 0;vertical-align:baseline}}
