/* Live client area: auth forms, pickers, tables, statuses. Builds on portal-ui.css. */
.live-auth{min-height:70vh;display:grid;place-items:center;padding:110px 20px 60px}
.live-auth-card{width:min(460px,100%);background:#fff;border:1px solid #ece6f1;border-radius:22px;padding:32px;box-shadow:0 20px 60px #42215c0f}
.live-auth-card h1{font-size:30px;line-height:1.15;margin:8px 0 18px}
.live-auth-card form{display:grid;gap:14px}
.live-auth-card label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#2b163e}
.live-auth-card input{font:inherit;font-weight:400;border:1px solid #ddd3e8;border-radius:12px;padding:12px 14px;min-height:46px;background:#fcfaff}
.live-auth-card input:focus{outline:2px solid #7b2cdb;outline-offset:1px}
.live-auth-card small{font-weight:400;color:#80758a}
.live-primary{background:#7b2cdb;min-height:48px;font-size:14px;width:100%}
.live-primary[disabled]{opacity:.6}
.live-tabs{display:flex;gap:6px;background:#f6efff;padding:5px;border-radius:12px;margin-bottom:18px}
.live-tabs button,.live-tabs a{flex:1;border:0;background:none;padding:10px 8px;border-radius:9px;font:inherit;font-size:13px;color:#6e5a82;cursor:pointer;text-align:center;text-decoration:none;min-height:40px}
.live-tabs [aria-selected="true"]{background:#fff;color:#2b163e;font-weight:600;box-shadow:0 2px 8px #42215c14}
.live-tabs.inline{max-width:320px;margin:12px 0 4px}
.live-msg{border-radius:12px;padding:12px 14px;font-size:13px;margin:0 0 14px}
.live-msg.error{background:#fdecec;color:#9b2c2c}
.live-msg.ok{background:#e9f7f1;color:#22684f}
.live-hint{font-size:12.5px;color:#80758a;line-height:1.55}
.live-center{min-height:60vh;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center;padding:40px}
.live-spinner{width:34px;height:34px;border-radius:50%;border:3px solid #ece6f1;border-top-color:#7b2cdb;animation:live-spin .8s linear infinite}
@keyframes live-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.live-spinner{animation:none}}
.live-pickers{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.live-picker{display:grid;gap:4px;font-size:11px;color:#80758a}
.live-picker select,.live-grant select{font:inherit;font-size:13px;color:#2b163e;border:1px solid #ddd3e8;border-radius:10px;padding:9px 12px;background:#fff;min-height:42px;max-width:340px}
.live-table td{vertical-align:top;font-size:12.5px}
.live-table td small{display:block;color:#9a8fa6;font-size:11px;margin-top:2px}
.live-table td a{color:#2b163e}
.live-table th button{border:0;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}
.live-table th button[aria-pressed="true"]{color:#7b2cdb;text-decoration:underline}
.live-decision{min-width:220px;max-width:360px;line-height:1.45}
.live-rating{display:inline-block;font-size:11px;font-weight:600;padding:4px 9px;border-radius:7px;white-space:nowrap;background:#f1edf5;color:#6e5a82}
.live-rating.good{background:#e6f5ee;color:#23704f}
.live-rating.watch{background:#fdf3df;color:#8a5d10}
.live-rating.bad{background:#fde9e6;color:#a23a2a}
.live-verdict p{font-size:15px;line-height:1.6;margin:0}
.live-verdict h2{margin:4px 0 0}
.live-pending p{font-size:15px;line-height:1.6;max-width:640px}
.portal-shell .portal-panel svg.live-chart{width:100%;height:auto;max-height:260px;display:block}
.live-legend{font-size:12px;color:#80758a;margin:8px 0}
.live-chart path{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.live-chart path.orders{stroke:#398d7a}
.live-chart path.spend{stroke:#d77b5d}
.live-chart text{font-size:10px;fill:#9a8fa6}
.live-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 6px 0 12px;vertical-align:-1px}
.live-dot.orders{background:#398d7a}.live-dot.spend{background:#d77b5d}
.live-chip{display:inline-flex;align-items:center;gap:4px;background:#f6efff;border-radius:8px;padding:4px 4px 4px 9px;margin:2px;font-size:12px}
.live-chip button{border:0;background:#fff;border-radius:6px;width:26px;height:26px;cursor:pointer;color:#a23a2a;font-size:15px}
.live-grant{display:flex;gap:8px;flex-wrap:wrap}
.live-grant .portal-button{width:auto;background:#7b2cdb}
.live-link{border:0;background:none;color:#7b2cdb;font:inherit;cursor:pointer;text-decoration:underline;padding:6px 0;min-height:32px}
.live-signout{display:flex;align-items:center;gap:8px;border:0;background:none;font:inherit;font-size:13px;color:#6e5a82;cursor:pointer;padding:10px 0;min-height:40px}
.live-signout svg,.live-back svg{width:18px;height:18px}
.live-log{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:12.5px}
.live-back{display:inline-flex;gap:6px;align-items:center;margin-bottom:4px}
@media (max-width:760px){.live-auth{padding-top:90px}.live-auth-card{padding:22px}.live-picker select{max-width:100%}.live-pickers{width:100%}.live-picker{width:100%}}

/* ---------- admin charts (real data) ---------- */
.live-grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:16px 0}
.live-grid-2>.portal-panel{margin:0}
.live-coverage{font-size:13px;line-height:1.5;color:#8a5d10;background:#fdf6e7;border:1px solid #f3e4c2;border-radius:10px;padding:10px 13px;margin:0 0 14px}
.live-coverage.full{color:#23704f;background:#eef8f2;border-color:#d6ecdf}
.live-table tfoot td{font-weight:600;background:#faf8fc;border-top:2px solid #ebe6f1}
.live-stack{display:flex;height:14px;border-radius:8px;overflow:hidden;gap:3px;margin:6px 0 18px}
.live-stack i{display:block;min-width:6px}
.live-stack i.good{background:#4aa47f}.live-stack i.watch{background:#e3a83d}.live-stack i.bad{background:#d8604b}
.live-health{display:grid;gap:12px}
.live-health-item{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;padding:12px 14px;border:1px solid #eeeaf3;border-radius:12px}
.live-health-item strong{font-size:15px;color:#2a2435}
.live-health-item p{grid-column:1/-1;margin:0;font-size:13px;line-height:1.5;color:#5f566b}
.live-health-item small{grid-column:1/-1;font-size:12px;color:#9a8fa6;line-height:1.45}
.live-bars{display:grid;gap:4px;margin-top:8px}
.live-bar-row{display:grid;grid-template-columns:170px minmax(0,1fr) 120px;gap:14px;align-items:center;padding:9px 10px;border-radius:10px;color:inherit;text-decoration:none;transition:background .2s}
.live-bar-row:hover,.live-bar-row:focus-visible{background:#f7f4fa}
.live-bar-name{display:flex;flex-direction:column;min-width:0}
.live-bar-name strong{font-size:14px;color:#2a2435;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-bar-name small{font-size:11px;color:#9a8fa6}
.live-bar-tracks{display:grid;gap:5px;min-width:0}
.live-track{display:flex;align-items:center;gap:8px;min-width:0}
.live-track i{display:block;height:9px;border-radius:5px;flex:none;max-width:calc(100% - 80px)}
.live-track.spend i{background:#d77b5d}.live-track.orders i{background:#398d7a}
.live-track b{font-size:12px;font-weight:600;color:#5f566b;white-space:nowrap}
.live-bar-drr{text-align:right}
@media(max-width:900px){.live-grid-2{grid-template-columns:1fr}}
@media(max-width:640px){.live-bar-row{grid-template-columns:1fr auto;gap:6px 10px}.live-bar-tracks{grid-column:1/-1;grid-row:2}.live-bar-drr{grid-column:2;grid-row:1}}

/* ---------- clickable rating groups (filter) ---------- */
.live-stack button{display:block;min-width:6px;height:100%;padding:0;border:0;cursor:pointer;transition:opacity .2s,filter .2s}
.live-stack button.good{background:#4aa47f}.live-stack button.watch{background:#e3a83d}.live-stack button.bad{background:#d8604b}
.live-stack button:hover{filter:brightness(1.08)}
.live-stack button.dim{opacity:.28}
button.live-health-item{width:100%;text-align:left;font:inherit;color:inherit;background:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s,opacity .2s}
button.live-health-item:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #2823360d}
button.live-health-item:focus-visible{outline:3px solid #9b6be0;outline-offset:2px}
button.live-health-item:disabled{cursor:default;opacity:.6}
button.live-health-item.good:hover,button.live-health-item.good.active{border-color:#4aa47f}
button.live-health-item.watch:hover,button.live-health-item.watch.active{border-color:#e3a83d}
button.live-health-item.bad:hover,button.live-health-item.bad.active{border-color:#d8604b}
button.live-health-item.active{box-shadow:0 0 0 3px #7b2cdb14;background:#fcfbfe}
button.live-health-item.dim{opacity:.55}
.live-health-item em{grid-column:1/-1;font-style:normal;font-size:12px;font-weight:600;color:#7b2cdb;margin-top:2px}
.live-filter-reset,.live-filter-chip button{white-space:nowrap;flex:none;font:inherit;font-size:13px;font-weight:600;color:#7b2cdb;background:#f3edfc;border:0;border-radius:8px;padding:8px 12px;cursor:pointer}
.live-filter-reset:hover,.live-filter-chip button:hover{background:#e9defa}
.live-anchor{scroll-margin-top:16px}
.live-filter-chip{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 12px;padding:10px 14px;font-size:13px;color:#5f566b;background:#fff;border:1px solid #e9e7ee;border-radius:12px}
.live-filter-chip button{margin-left:auto}

/* ---------- «Разбор и решения» ---------- */
.jr-source{white-space:nowrap}
.jr-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}
.jr-count{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;font:inherit;text-align:left;background:#fff;border:1px solid #e9e7ee;border-left-width:4px;border-radius:14px;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s}
.jr-count strong{font-size:28px;line-height:1.1;color:#2a2435}
.jr-count span{font-size:13px;color:#6b6178}
.jr-count.urgent{border-left-color:#d8604b}.jr-count.attention{border-left-color:#e3a83d}.jr-count.stable{border-left-color:#4aa47f}.jr-count.nodata{border-left-color:#b8afc4}
.jr-count:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #2823360d}
.jr-count.active{box-shadow:0 0 0 3px #7b2cdb1f;background:#fcfbfe}
.jr-count.dim{opacity:.5}
.jr-count:disabled{cursor:default;opacity:.45}
.jr-count:focus-visible,.jr-jump:focus-visible{outline:3px solid #9b6be0;outline-offset:2px}
.jr-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 16px}
.jr-search{flex:1;min-width:220px}
.jr-first{border-color:#f3d2cb;background:linear-gradient(180deg,#fff7f5,#fff 60%)}
.jr-todo{list-style:none;counter-reset:jr;margin:0;padding:0;display:grid;gap:10px}
.jr-todo li{counter-increment:jr;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-areas:"n a" "n p";gap:2px 12px;padding:12px 14px;background:#fff;border:1px solid #f1e2de;border-radius:12px}
.jr-todo li:before{content:counter(jr);grid-area:n;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;color:#fff;background:#d8604b}
.jr-todo .jr-jump{grid-area:a;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:0;font:inherit;text-align:left;background:none;border:0;cursor:pointer;color:#2a2435}
.jr-todo .jr-jump:hover strong{color:#7b2cdb;text-decoration:underline}
.jr-todo p{grid-area:p;margin:0;font-size:14px;line-height:1.5;color:#4a4256}
.jr-brand{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7b2cdb;background:#f3edfc;border-radius:6px;padding:3px 7px}
.jr-group{scroll-margin-top:16px}
.jr-group-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.jr-group-head h2{margin:2px 0 4px}
.jr-cab{margin:0;font-size:13px;color:#6b6178}
.jr-group-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.jr-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.jr-list{display:grid;gap:12px}
.jr-item{border:1px solid #ebe8f0;border-left:4px solid #b8afc4;border-radius:12px;padding:14px 16px;background:#fff}
.jr-item.jr-urgent{border-left-color:#d8604b}.jr-item.jr-attention{border-left-color:#e3a83d}.jr-item.jr-stable{border-left-color:#4aa47f}
.jr-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.jr-item-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.jr-item-title .jr-brand{align-self:flex-start;margin-bottom:2px}
.jr-item-title strong{font-size:15px;color:#2a2435}
.jr-item-title small{font-size:13px;color:#6b6178}
.jr-badges{display:flex;flex-wrap:wrap;gap:6px}
.jr-decision{margin:12px 0 8px;padding:11px 13px;background:#f6f1fd;border-radius:10px}
.jr-decision span{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7b2cdb;margin-bottom:3px}
.jr-decision p{margin:0;font-size:14px;line-height:1.55;color:#2a2435;font-weight:500}
.jr-more summary{cursor:pointer;font-size:13px;font-weight:600;color:#6b6178;padding:4px 0;list-style-position:inside}
.jr-more summary:hover{color:#7b2cdb}
.jr-more dl{display:grid;gap:10px;margin:8px 0 4px}
.jr-more dt{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#9a8fa6;margin-bottom:2px}
.jr-more dd{margin:0;font-size:13.5px;line-height:1.55;color:#4a4256}
.jr-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px;font-size:12px;color:#9a8fa6}
.jr-links{font-size:13px;color:#9a8fa6;margin:6px 0 0}
.jr-links a{color:#7b2cdb}
@media(max-width:760px){.jr-strip{grid-template-columns:1fr 1fr}.jr-group-side{align-items:flex-start}.jr-chips{justify-content:flex-start}.jr-count strong{font-size:24px}}
.jr-toolbar .live-picker select{min-width:210px}
