/* Marketing page — dashboard / publish queue / calendar. Tokens come from app.css. */

/* channel glyph badges: identity carried by text + title, colour is a hint only */
.ch-ico{display:inline-flex;align-items:center;justify-content:center;width:22px;height:18px;border-radius:5px;font:700 10px var(--font-h);letter-spacing:.02em;vertical-align:middle;color:#fff;background:var(--slate)}
.ch-ico.li{background:#0a66c2}.ch-ico.lip{background:#0b3f6e}.ch-ico.ig{background:#c13584}.ch-ico.fb{background:#1877f2}.ch-ico.yt{background:#cc0000}
.ch-icos{display:inline-flex;gap:3px;vertical-align:middle}

/* connector status: one slim row */
.soc-status{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;padding:8px 14px;border:1px solid var(--mist);border-radius:var(--r);background:#fff;margin-bottom:14px;font-size:12.5px}
.soc-status-l{font:600 11px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
.soc-st{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.soc-st .nm{color:var(--ink)}
.soc-status-r{margin-left:auto}
@media(max-width:700px){.soc-st .nm{display:none}.soc-status-r{display:none}}

/* disclosure cards */
details.disc{margin-bottom:14px}
details.disc>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-16px -18px;padding:14px 18px;border-radius:var(--r);min-height:44px}
details.disc>summary::-webkit-details-marker{display:none}
details.disc>summary::before{content:'›';font:700 16px var(--font-h);color:var(--blue-deep);width:12px;transition:transform .15s}
details.disc[open]>summary::before{transform:rotate(90deg)}
details.disc[open]>summary{margin-bottom:0;border-bottom:1px solid var(--mist);border-radius:var(--r) var(--r) 0 0}
details.disc>summary:hover{background:var(--cloud)}
details.disc .disc-t{font:700 14px var(--font-h);color:var(--ink)}
details.disc .disc-body{padding-top:14px}
@media(max-width:700px){details.disc>summary{margin:-14px -14px;padding:12px 14px}}

/* what's working / what isn't */
.rank{list-style:none;counter-reset:r}
.rank li{align-items:center}
.rank .rate{flex:0 0 58px;font:700 15px var(--font-h);color:var(--navy);text-align:right;padding-right:6px}
.card.good .rank .rate{color:var(--green)}.card.bad .rank .rate{color:var(--amber)}

/* pillar × CTA heatmap: one hue, light → dark */
.heat-grid{display:grid;gap:3px;min-width:320px}
.heat-grid>div{padding:6px 6px;border-radius:5px;font-size:12px;min-width:0}
.heat-grid .hh{font:600 10.5px var(--font-h);color:var(--slate-2);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-self:end}
.heat-grid .hh.corner{text-align:left;color:var(--slate)}
.heat-grid .hr{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-self:center}
.heat-grid .hc{text-align:center;font-weight:700;color:var(--ink);background:rgba(0,121,219,calc(var(--h,0) * .6 + .06));line-height:1.15}
.heat-grid .hc.dark{color:#fff}
.heat-grid .hc i{display:block;font:400 10px var(--font-b);opacity:.75;font-style:normal}
.heat-grid .hc.none{background:var(--cloud);color:var(--steel);font-weight:400}
.heat-cap{margin-top:10px;color:var(--ink)}

/* publish queue */
.q-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--mist);border-radius:999px;background:#fff;font:600 12px var(--font-h);color:var(--slate-2);text-transform:capitalize;min-height:34px}
.chip b{font-weight:700;color:var(--ink)}
.chip:hover{border-color:var(--steel)}
.chip.active{background:var(--navy);border-color:var(--navy);color:#fff}.chip.active b{color:#fff}
.q-list li.q-grp{padding:12px 0 2px;border-top:0}
.q-list li.q-grp+li{border-top:0}
.q-list .sub-h{margin:0;text-transform:capitalize}
.q-post .q-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.q-post .q-when{font:600 12px var(--font-b);color:var(--slate-2)}
.q-post .q-text{font-size:13.5px;line-height:1.45}
.q-post .q-actions{margin-top:8px;gap:6px}
.q-post.focus{background:var(--ice);margin:0 -18px;padding:9px 18px;border-radius:8px}
.q-post.editing{background:var(--cloud);margin:0 -18px;padding:12px 18px}
@media(max-width:700px){.q-post.focus,.q-post.editing{margin:0 -14px;padding-left:14px;padding-right:14px}}

/* calendar: 14 day rows */
.cal-days{display:grid;gap:6px}
.cal-day{display:grid;grid-template-columns:96px 1fr;gap:10px;padding:8px 0;border-top:1px solid var(--mist);min-height:44px}
.cal-day:first-child{border-top:0}
.cal-day.empty{color:var(--steel)}
.cal-day.today .cal-dh strong{color:var(--blue-deep)}
.cal-dh{display:flex;flex-direction:column;gap:2px;font-size:12.5px;color:var(--slate)}
.cal-dh strong{font:700 13px var(--font-h);color:var(--ink)}
.cal-dh .pill{align-self:flex-start;margin-top:2px}
.cal-posts{display:flex;flex-direction:column;gap:6px;min-width:0;justify-content:center}
.cal-post{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:7px 10px;border:1px solid var(--mist);border-radius:8px;background:#fff;cursor:pointer;min-height:40px}
.cal-post:hover{border-color:var(--blue);background:var(--ice)}
.cal-post .cal-t{font:600 12px var(--font-b);color:var(--slate-2);white-space:nowrap;min-width:64px}
.cal-post .cal-txt{flex:1 1 200px;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){.cal-day{grid-template-columns:1fr;gap:6px}.cal-dh{flex-direction:row;align-items:center;gap:8px}.cal-post .cal-txt{white-space:normal;flex-basis:100%}}
