/* Executive Social Report — UI kit styles (lifted from the reference mockup) */
:root{color-scheme:light;}
body{margin:0;background:#F1F0EC;padding:32px 16px;font-family:var(--font-sans,'Montserrat',system-ui,sans-serif);}
.rp{background:#FAFAF9;border:0.5px solid #ECEBE8;border-radius:16px;padding:28px 26px;color:#1A1A1A;max-width:660px;margin:0 auto;box-shadow:0 1px 3px rgba(0,0,0,.05);}
.rp *{box-sizing:border-box;}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#b11871;margin:0 0 6px;display:flex;align-items:center;gap:7px;}
.sec{margin-top:30px;padding-top:26px;border-top:0.5px solid #ECEBE8;}
.sec-title{font-size:19px;font-weight:800;margin:0 0 3px;letter-spacing:-.02em;}
.sec-sub{font-size:13px;color:#8C8A85;margin:0 0 16px;line-height:1.5;font-weight:500;}
.num{font-variant-numeric:tabular-nums;}
.card{background:#fff;border:0.5px solid #ECEBE8;border-radius:12px;}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;}
.kpi{padding:14px 14px 13px;}
.kpi .l{font-size:11px;font-weight:600;color:#8C8A85;margin:0 0 6px;}
.kpi .v{font-size:25px;font-weight:800;margin:0;letter-spacing:-.02em;}
.pill{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:2px 7px;border-radius:20px;margin-top:8px;font-variant-numeric:tabular-nums;}
.p-up{background:#E4F7E1;color:#067D0E;} .p-warn{background:#F6F7CE;color:#6A6C00;}
.co{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;}
.co .tile{flex:none;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;}
.co .ct{font-size:14px;font-weight:700;margin:1px 0 4px;letter-spacing:-.01em;}
.co .cb{font-size:13.5px;line-height:1.55;margin:0;color:#4A4844;font-weight:500;}
.bar-row{display:grid;grid-template-columns:118px 1fr 48px;align-items:center;gap:12px;margin:9px 0;}
.bar-row .bl{font-size:12px;font-weight:600;color:#3a3a3a;}
.track{height:16px;background:#F0EFEC;border-radius:5px;overflow:hidden;}
.fill{height:100%;border-radius:5px;}
.bar-row .bv{font-size:12px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums;}
.tp{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.pc{border:0.5px solid #ECEBE8;border-radius:12px;overflow:hidden;background:#fff;}
.thumb{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;position:relative;}
.rank{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.92);color:#0A2942;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;}
.tbadge{position:absolute;bottom:8px;left:8px;display:inline-flex;align-items:center;gap:4px;background:rgba(0,0,0,.42);color:#fff;font-size:10px;font-weight:600;padding:3px 7px;border-radius:20px;}
.pc .m{padding:11px 12px 12px;}
.hook{font-size:12.5px;font-weight:600;line-height:1.4;color:#1A1A1A;margin:0 0 9px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:52px;}
.mrow{display:flex;gap:11px;font-size:11px;color:#8C8A85;font-weight:600;font-variant-numeric:tabular-nums;}
.mrow span{display:inline-flex;align-items:center;gap:3px;}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.colh{font-size:12px;font-weight:700;color:#1A1A1A;margin:0 0 9px;}
.colh .k{font-size:10px;font-weight:600;color:#8C8A85;display:block;letter-spacing:.04em;text-transform:uppercase;margin-top:2px;}
.liq{font-size:12.5px;line-height:1.5;margin:0 0 9px;color:#4A4844;font-weight:500;}
.liq b{color:#1A1A1A;font-weight:700;}
.rec{display:flex;gap:12px;margin:0 0 12px;}
.rec .rn{flex:none;width:24px;height:24px;border-radius:50%;background:#1A1A1A;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.rec p{margin:0;font-size:13px;line-height:1.5;font-weight:500;color:#4A4844;}
.rec b{color:#1A1A1A;font-weight:700;}
.band{background:#1A1A1A;color:#fff;border-radius:12px;padding:20px 22px;margin-top:22px;}
.band .bt{font-size:15px;font-weight:800;margin:0 0 5px;}
.band .bb{font-size:13px;line-height:1.55;margin:0;color:#D8D6D0;font-weight:500;}
.chip{display:inline-flex;align-items:center;gap:6px;background:#EAF1FB;color:#0A66C2;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;}
