#bgp-sales .bi-native-catalog-toolbar{justify-content:flex-end;display:flex}
#bgp-sales .bi-native-catalog-toolbar label{display:flex;flex-direction:row;align-items:center;gap:10px;color:var(--secondary);font-size:12px}
#bgp-sales .bi-native-catalog-toolbar select{width:auto;min-width:100px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 12px}
#bgp-sales .bi-native-catalog-spark path{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#bgp-sales .bi-native-mini-plan{stroke:var(--plan)}
#bgp-sales .bi-native-mini-actual{stroke:var(--actual)}
#bgp-sales .bi-native-mini-rr{stroke:var(--rr);stroke-dasharray:2 5}
#bgp-sales .bi-native-mini-legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--secondary);font-size:10px}
#bgp-sales .bi-native-mini-legend span:before{content:'';display:inline-block;width:13px;height:2px;margin-right:4px;vertical-align:middle;background:var(--actual)}
#bgp-sales .bi-native-mini-legend [data-series=plan]:before{background:var(--plan)}
#bgp-sales .bi-native-mini-legend [data-series=rr]:before{background:var(--rr)}
#bgp-sales .bi-native-mini-quality{display:block;color:var(--secondary);font-size:10px;margin-top:4px}
#bgp-sales .bgp-report-tile{min-width:0}
#bgp-sales .bi-catalog-tile-surface{height:100%;position:relative}
#bgp-sales .bgp-report-tile[data-catalog-flight=forward]{z-index:10}
#bgp-sales .bgp-report-tile[data-catalog-flight=back]{z-index:1}
#bgp-sales .bi-native-catalog-loading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
/* Task 323: a tile asks its figures itself — a soft pulse while they load; after two failed tries a retry beside the star */
#bgp-sales .bi-native-preview-loading{animation:bi-native-tile-wait 1.1s ease-in-out infinite alternate}
@keyframes bi-native-tile-wait{from{opacity:.45}to{opacity:1}}
@media (prefers-reduced-motion:reduce){#bgp-sales .bi-native-preview-loading{animation:none}}
#bgp-sales .bi-native-tile-retry{position:absolute;right:58px;top:15px;z-index:1;display:grid;place-items:center;width:36px;height:36px;padding:8px;border:1px solid var(--line);border-radius:8px;color:var(--secondary);background:var(--surface);cursor:pointer}
#bgp-sales .bi-native-tile-retry svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#bgp-sales .bi-native-tile-retry:hover{color:var(--actual);background:var(--surface-hover)}
#bgp-sales .bi-native-tile-retry:focus-visible{outline:2px solid var(--actual);outline-offset:3px}
#bgp-sales .bgp-catalog[data-tile-size="compact"] .bi-native-tile-retry{top:9px;right:51px}
#bgp-sales .bi-native-catalog-placeholder{min-height:280px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
#bgp-sales .bi-native-preferences-notice{display:flex;align-items:center;gap:12px;padding:8px 32px;color:var(--secondary);font-size:12px;min-height:20px}
#bgp-sales .bi-native-preferences-notice:empty{display:none}
#bgp-sales .bi-native-preferences-notice button{font-size:12px;padding:4px 10px}
#bgp-sales .bi-native-event-feed{padding:28px 32px;max-width:1200px;margin-inline:auto}
#bgp-sales .bi-native-event-row{padding:18px 0;border-bottom:1px solid var(--line);display:grid;gap:8px}
#bgp-sales .bi-native-event-row small{color:var(--secondary)}
@media(max-width:767px){#bgp-sales .bi-native-preferences-notice{padding:8px 14px;flex-wrap:wrap}#bgp-sales .bi-native-event-feed{padding:18px 14px}#bgp-sales .bi-native-catalog-loading{gap:10px;padding:14px}#bgp-sales .bi-native-catalog-placeholder{min-height:230px}#bgp-sales .bgp-catalog[data-tile-size=compact] .bi-native-mini-legend{gap:4px;font-size:8px}#bgp-sales .bgp-catalog[data-tile-size=compact] .bi-native-mini-quality{font-size:8px}}
/* Task 302: the advances and receivables tiles — last year dashed, the overdue part in the warning colour */
#bgp-sales .bi-native-mini-previous{stroke:var(--previous,var(--plan));stroke-dasharray:4 4}
#bgp-sales .bi-native-mini-overdue{stroke:var(--bad)}
#bgp-sales .bi-native-mini-legend [data-series=previous]:before{background:repeating-linear-gradient(90deg,var(--previous,var(--plan)) 0 4px,transparent 4px 7px)}
#bgp-sales .bi-native-mini-legend [data-series=overdue]:before{background:var(--bad)}
#bgp-sales .bi-native-mini-legend .bi-native-mini-span{margin-left:auto}
#bgp-sales .bi-native-mini-legend .bi-native-mini-span:before{content:none}
#bgp-sales .bgp-catalog[data-tile-size=compact] .bi-native-mini-span{display:none}
/* Task 369: a tile fades in, then its lines are drawn (native-catalog-view.js, `reveal`); while it waits to appear (below the
   screen, under the boot loader) it is hidden. «Reduce motion» and a print show every tile. */
#bgp-sales .bgp-report-tile[data-appear]{opacity:0}
/* bars on a tile (data-reveal=bars) grow from their base */
#bgp-sales [data-reveal=bars]>*{transform-origin:50% 100%;transform-box:fill-box}
@media (prefers-reduced-motion:reduce),print{#bgp-sales .bgp-report-tile[data-appear]{opacity:1}}
