/* v3 (WS17-S2b, security audit P3-14): the green New quote selector names data-act="startQuote" — the inline onclick it matched is gone. */
/* Oscar's September 22 refinement: compact chips, green quote action and a
   grey outline of the existing connected mark for genuine no-data states. */
/* Customer cyan: reference #14AED6 at 55% on black / 10% on white;
   dark ink is 65% cyan on white, its ground 10% cyan on #191919. */
:root{--c-teal:#0B6076;--c-teal-bg:#E8F7FB;--empty-stair:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-.5 -.5 7 7'%3E%3Cpath d='M0 6V4h2V2h2V0h2v6z' fill='none' stroke='black' stroke-width='.2' stroke-linejoin='miter'/%3E%3C/svg%3E")}
body.dark{--c-teal:#66CAE4;--c-teal-bg:#19282C}
body .an-card .an-ent[data-entity="quotes"],.builder-category[data-category="research"]{color:var(--c-info);background:var(--c-info-bg)}
body .an-card .an-ent[data-entity="opportunities"],.builder-category[data-category="blend"]{color:var(--c-held);background:var(--c-held-bg)}
body .an-card .an-ent[data-entity="customers"]{color:var(--c-teal);background:var(--c-teal-bg)}
body .an-card .an-ent[data-entity="distributors"],.builder-category[data-category="glp"]{color:var(--c-good);background:var(--c-good-bg)}
body .an-card .an-ent[data-entity="overrides"]{color:var(--c-bad);background:var(--c-bad-bg)}
body .an-ent,.builder-category,.dp-pending{border-radius:var(--radius-pill)}
.builder-category{display:inline-flex;align-self:flex-start;padding:3px 6px;border:1px solid transparent}
body.repshell .rail-item .cnt{border-radius:var(--radius-pill)}
body.repshell .rail-item .cnt.needs-attention{color:var(--c-bad);background:var(--c-bad-bg);border-color:var(--c-bad)}
/* Rail is always dark; badges retain readable ink even in the light theme. */
body:not(.dark).repshell .rail-item .cnt.needs-attention{color:#FF7472;background:#321A1C;border-color:#FF7472}
body :is(button.d-btn[data-act="newQuote"],button.d-btn[data-act="startQuote"],button.d-btn[data-owner-empty-quote]){background:var(--c-good);border-color:var(--c-good);color:#FFFFFF}
body.dark :is(button.d-btn[data-act="newQuote"],button.d-btn[data-act="startQuote"],button.d-btn[data-owner-empty-quote]){color:#141414}
body :is(button.d-btn[data-act="newQuote"],button.d-btn[data-act="startQuote"],button.d-btn[data-owner-empty-quote]):hover{filter:brightness(.92)}
body :is(button.d-btn[data-act="newQuote"],button.d-btn[data-act="startQuote"],button.d-btn[data-owner-empty-quote]):focus-visible{outline:2px solid var(--fg);outline-offset:2px}
body [data-stage="dormant"]{--dp-stage:#8170FD}
/* A mask traces the exact brand polygon. It does not imply a data series. */
body #analytics :is(#an-close,#an-funnel,#an-stage,#an-quoted) .pqbk-empty:before,body .dp-empty-mark,body #ov-grid .ov-empty-mark,body.dark .dp-empty-mark,body.dark #ov-grid .ov-empty-mark{background:var(--muted);opacity:1;clip-path:none;mask:var(--empty-stair) center/contain no-repeat;-webkit-mask:var(--empty-stair) center/contain no-repeat}
body .builder-cart-empty svg{opacity:1;fill:none;stroke:var(--muted);stroke-width:.2;stroke-linejoin:miter;overflow:visible}
body .builder-cart-empty svg path{fill:none}
.cb-next{display:block;overflow-wrap:anywhere}
.cb-next b{font-weight:var(--fw-med);color:var(--fg)}
.cb-context{margin-top:var(--s2)}
.cb-context summary,#an-close-off summary{cursor:pointer;width:fit-content;max-width:100%}
.cb-context p{margin:var(--s2) 0 0}
#an-close-off ul{margin:var(--s2) 0 0;padding:0;list-style:none;display:grid;gap:var(--s2)}
.cb-context summary:focus-visible,#an-close-off summary:focus-visible{outline:2px solid var(--fg);outline-offset:2px}

#ov-grid .pqbk-empty:not(:has(.ov-empty-mark)):before,#leaderboard-chart .pqbk-empty:before{content:"";display:block;width:var(--s8);height:var(--s8);margin:0 auto var(--s4);background:var(--muted);mask:var(--empty-stair) center/contain no-repeat;-webkit-mask:var(--empty-stair) center/contain no-repeat}
#bellDot{background:var(--c-bad)}

#leaderboard-chart .pqbk-empty{text-align:center}

/* The cart already owns a panel edge; its empty content is not another card. */
body.builder-active #cart .builder-cart-empty{border:0;border-radius:0}
/* Links retain their colour, pointer and keyboard focus without decorative rules. */
body :is(a:any-link,.linkbtn,.builder-tier-toggle,.qstat[data-hist]:not(.revoked)){text-decoration:none}
body :is(.d-tlink,.na-open,.na-foot button){border-bottom:0}
body .qstat.revoked[data-hist]:hover{text-decoration:line-through}
