:root{--paper:#f6f6f3;--card:#ffffff;--ink:#20242b;--muted:#6a6f76;--line:#e4e3de;--accent:#0a79ad;--accent-ink:#075d86;--danger:#b42318;--danger-ink:#912018;--brand-blue:#0f98d5;--brand-orange:#f48524;--brand-navy:#1f2633;--danger-text:#8a3324;--radius:7px;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,"SF Mono","Cascadia Code",Menlo,monospace}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent)}.masthead{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid var(--line);background:var(--card)}.wordmark{font-family:var(--serif);font-size:1.35rem;letter-spacing:.01em}.wordmark span{color:var(--accent)}.whoami{font-size:.82rem;color:var(--muted)}.whoami b{color:var(--ink);font-weight:600}.filterbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:1rem;padding:.75rem .9rem;background:var(--card);border:1px solid var(--line);border-radius:8px}.filter{display:flex;flex-direction:column;gap:.2rem}.filter>span{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.filter select{min-width:9.5rem}.navlinks{display:flex;gap:1rem;font-size:.88rem}.navlinks a{color:var(--muted);text-decoration:none}.navlinks a:hover{color:var(--ink)}.navlinks a.active{color:var(--ink);font-weight:600}@media print{.actions,.masthead,.no-print{display:none!important}.wrap{padding:0;max-width:none}.card{border:none;box-shadow:none}}.wrap{max-width:1080px;margin:0 auto;padding:1.5rem}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.pagehead h1{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin:0}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 .15rem}.btn{font:inherit;font-size:.88rem;font-weight:600;padding:.5rem .95rem;border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.secondary{background:#fff;color:var(--accent)}.btn.secondary:hover{background:#e9f6fb}.btn.ghost{background:#fff;color:var(--muted);border-color:var(--line)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{background:var(--danger-ink);border-color:var(--danger-ink)}.actions{display:flex;gap:.6rem;align-items:center}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:.88rem}thead th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#fbfbf9}tbody td,thead th{padding:.7rem .9rem;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafaf7}.contact{font-family:var(--mono);font-size:.8rem;color:var(--muted)}.form-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem;margin-bottom:1.2rem}.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.85rem;gap:.85rem}.field{display:flex;flex-direction:column;gap:.25rem}.field.full{grid-column:1/-1}label{font-size:.78rem;font-weight:600;color:var(--muted)}input,select,textarea{font:inherit;font-size:.9rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink)}textarea{resize:vertical;min-height:56px}.form-foot{display:flex;gap:.6rem;align-items:center;margin-top:1rem}.note{font-size:.8rem;color:var(--muted)}.error{color:var(--danger-text)}.error,.ok{font-size:.85rem}.ok{color:#246b3c}.empty{padding:2.5rem;text-align:center;color:var(--muted)}.warn{background:#f3eede;color:#7a5d18;border-left:3px solid #b58900}.calm,.warn{padding:.5rem .75rem;border-radius:0 var(--radius) var(--radius) 0;font-size:.85rem;margin:.5rem 0}.calm{background:var(--card);color:var(--muted);border-left:3px solid #b8b6ae}.hint{background:#e6eef8;color:#24466e;border-left:3px solid #3d6ea8;padding:.5rem .75rem;border-radius:0 var(--radius) var(--radius) 0;font-size:.88rem;margin:.8rem 0 .4rem}.choice{display:flex;gap:.6rem;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid var(--line)}.choice:last-child{border-bottom:0}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:1.5rem}.login-card{width:100%;max-width:380px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem}.login-card .wordmark{display:block;margin-bottom:.2rem}.login-card .sub{color:var(--muted);font-size:.86rem;margin-bottom:1.2rem}.login-card .field{margin-bottom:.85rem}.login-card .btn{width:100%;text-align:center}.btn.google{background:#fff;color:var(--ink);border-color:var(--line)}.btn.google:hover{background:#f4f4f1;border-color:var(--muted)}.btn.google:disabled{opacity:.6;cursor:default}.login-or{display:flex;align-items:center;gap:.6rem;margin:.9rem 0;color:var(--muted);font-size:.78rem}.login-or:after,.login-or:before{content:"";flex:1 1;height:1px;background:var(--line)}.login-note{margin:.9rem 0 0;line-height:1.35}@media (max-width:640px){.grid{grid-template-columns:1fr}.hide-sm{display:none}}.filter-search{margin:0}.filter-search input{min-width:14rem}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.seg button{font:inherit;font-size:.85rem;padding:.5rem .8rem;background:#fff;color:var(--muted);border:0;cursor:pointer}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--accent);color:#fff;font-weight:600}@media (max-width:640px){.filter-search,.filter-search input{min-width:0;width:100%}.filter-search{flex:1 1 100%}}.card.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.masthead-left{display:flex;align-items:baseline;gap:1.5rem;flex-wrap:wrap}a.wordmark{color:var(--ink);text-decoration:none}.navlinks{flex-wrap:wrap}.navlinks .zh{font-size:.8em}.wrap.wrap-wide{max-width:1400px}.leads-table{font-size:.82rem}.leads-table td{vertical-align:top}.leads-table thead th,.nowrap{white-space:nowrap}.remarks{min-width:12rem;max-width:20rem}.prewrap{white-space:pre-wrap}.wa{color:#246b3c;font-family:var(--sans)}.pill,.wa{font-size:.75rem;font-weight:600}.pill{display:inline-block;padding:.05rem .5rem;border-radius:999px;background:#eeede8;color:var(--ink)}.pill.st-considering,.pill.st-contacted{background:#e3f2fa;color:var(--accent-ink)}.pill.st-trial_attended,.pill.st-trial_booked{background:#dcebe0;color:#1f5a33}.pill.st-hold,.pill.st-trial_no_show{background:#f3eede;color:#7a5d18}.pill.st-converted{background:var(--accent);color:#fff}.pill.st-lost{background:#f2e3df;color:var(--danger-text)}.filterbar.daterange{margin-top:-.5rem}.listcount{margin:0 0 .6rem;font-size:.85rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.listcount b{color:var(--ink);font-weight:600}.listcount-filtered{color:var(--accent-ink);font-weight:600}.pager{display:flex;justify-content:space-between;align-items:center;margin:1rem 0}.section-h{font-family:var(--serif);font-size:1.1rem;font-weight:600;margin:1.6rem 0 .6rem}.card.pad{padding:1rem 1.2rem}.grid.grid-3{grid-template-columns:repeat(3,1fr)}.inline-check{display:flex;gap:.4rem;align-items:center;font-weight:500;color:var(--ink);margin-top:.3rem}.inline-check input{margin:0}.child-block{border:1px solid var(--line);border-radius:var(--radius);padding:.6rem .9rem .9rem;margin:0 0 .8rem}.child-block legend{font-size:.78rem;font-weight:600;color:var(--muted);padding:0 .3rem}.facts{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.7rem 1.2rem;gap:.7rem 1.2rem;margin:0 0 .6rem}.facts .full{grid-column:1/-1}.facts dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.facts dd{margin:.1rem 0 0}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:flex;flex-wrap:wrap;gap:.3rem .7rem;align-items:baseline;padding:.45rem 0 .45rem .9rem;border-left:2px solid var(--line)}.timeline li.current{border-left-color:var(--accent)}.tl-when{font-size:.85rem}.tl-exp{font-size:.8rem;font-weight:600;color:#7a5d18}.tl-reason{font-size:.85rem;color:var(--danger-text)}.tl-note{font-size:.85rem;color:var(--muted);font-style:italic;flex-basis:100%}details.add{margin:.6rem 0 0}details.add>summary{cursor:pointer;font-size:.88rem;font-weight:600;color:var(--accent);margin-bottom:.6rem}.inline-form{display:inline-flex;gap:.4rem;align-items:center;margin-left:.6rem;flex-wrap:wrap}.inline-form select{padding:.25rem .4rem}.inline-form .btn{padding:.25rem .6rem}.book-form{flex-wrap:wrap;align-items:flex-end;border-top:1px solid var(--line);padding-top:.9rem}.ok-box{background:#e3efe6;color:#1f5a33;border-left:3px solid #246b3c;padding:.5rem .75rem;border-radius:0 var(--radius) var(--radius) 0;font-size:.88rem;margin:.8rem 0}@media (max-width:640px){.facts,.grid.grid-3{grid-template-columns:1fr}}.ceo{color-scheme:light;--bg:#f3f8fd;--bg2:#ffffff;--bg3:#dcebf9;--ink:#1f3550;--muted:#5d7590;--faint:#8ea3ba;--line:#d3e2f1;--line2:#bcd2e8;--frm:#4a90e2;--kvc:#f08a5d;--pkw:#3dbb94;--tpy:#f2b84b;--jre:#ee8fb5;--upt:#6fbf5f;--tri:#f2a65a;--sgn:#5b8def;--wd:#e2788a;--chip:#fff;--shadow:0 1px 3px rgba(31,84,140,.10);background:var(--bg);color:var(--ink);font:14px/1.45 -apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;min-height:calc(100dvh - 4rem);padding:0 16px 32px}.ceo .cx-centres{--surface-1:#ffffff;--page:#f3f8fd;--ink-1:#16304d;--ink-2:#4a6583;--muted:#7d93ab;--grid:#dce8f4;--baseline:#b9cde2;--border:rgba(31,84,140,0.14);--s-total:#4a90e2;--s-pre:#f08a5d;--s-pri:#3dbb94;--c-frm:#4a90e2;--c-kvc:#f08a5d;--c-pkw:#3dbb94;--c-tpy:#f2b84b;--c-jre:#ee8fb5;--c-upt:#6fbf5f;--good:#1f8a4c}.ceo:has(.cx-centres){background:#f3f8fd}@media (prefers-color-scheme:dark){.ceo{color-scheme:dark;--bg:#14202e;--bg2:#1b2a3c;--bg3:#24364c;--ink:#e3ecf6;--muted:#9bb0c7;--faint:#7189a3;--line:#2a3d54;--line2:#38506c;--frm:#3987e5;--kvc:#d95926;--pkw:#199e70;--tpy:#c98500;--jre:#d55181;--upt:#3c9d3c;--tri:#cc7f2b;--sgn:#9878cc;--wd:#cf5f6a;--chip:#1b2a3c;--shadow:none}.ceo .cx-centres{--surface-1:#172536;--page:#0f1926;--ink-1:#ffffff;--ink-2:#c2d2e4;--muted:#8aa0b8;--grid:#24364c;--baseline:#33496a;--border:rgba(160,200,255,0.14);--s-total:#3987e5;--s-pre:#d95926;--s-pri:#199e70;--c-frm:#3987e5;--c-kvc:#d95926;--c-pkw:#199e70;--c-tpy:#c98500;--c-jre:#d55181;--c-upt:#008300;--good:#0ca30c}.ceo:has(.cx-centres){background:#0f1926}}.ceo *,.ceo :after,.ceo :before{box-sizing:border-box}.ceo .cx-wrap{max-width:1120px;margin:0 auto}.ceo .cx-subtabs{display:flex;gap:4px;flex-wrap:wrap;padding:14px 0 0}.ceo .cx-subtabs a{color:var(--muted);text-decoration:none;font-size:13px;padding:6px 12px;border-radius:8px}.ceo .cx-subtabs a:hover{color:var(--ink)}.ceo .cx-subtabs a.on{background:var(--bg3);color:var(--ink);font-weight:600}.ceo select{font:inherit;border:1px solid var(--line2);background:var(--chip);color:var(--ink);border-radius:8px;padding:4px 8px;font-size:12.5px;max-width:230px}.ceo .cx-table{border-collapse:collapse;width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ceo .cx-table thead th{background:none;text-transform:none;letter-spacing:0}.ceo .cx-table tbody td{padding:0;border-bottom:0}.ceo .cx-table tbody tr:hover{background:transparent}.ceo .cx-notice{background:var(--bg2);border-radius:12px;padding:1.6rem 1.4rem;color:var(--muted);box-shadow:var(--shadow);margin-top:14px;max-width:720px}.ceo .cx-centres{color:var(--ink-1);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45;padding:14px 4px 28px}.ceo .cx-centres h1{font-size:22px;font-weight:650;letter-spacing:-.01em;margin:0}.ceo .cx-centres .sub{color:var(--ink-2);font-size:13.5px;margin-top:3px}.ceo .cx-centres h2{font-size:15px;font-weight:650;margin:30px 0 10px}.ceo .cx-centres .cx-card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:18px}.ceo .cx-centres .controls{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:18px}.ceo .cx-centres .cx-seg{display:inline-flex;border:1px solid var(--baseline);border-radius:8px;overflow:hidden}.ceo .cx-centres .cx-seg button{border:none;background:transparent;color:var(--ink-2);font:inherit;font-size:13px;padding:6px 14px;cursor:pointer}.ceo .cx-centres .cx-seg button.on{background:var(--ink-1);color:var(--page);font-weight:600}.ceo .cx-centres .cx-chips{display:flex;gap:8px;flex-wrap:wrap}.ceo .cx-centres .chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--baseline);border-radius:999px;padding:5px 13px;font-size:13px;color:var(--ink-2);background:var(--surface-1);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ceo .cx-centres .chip .dot{width:9px;height:9px;border-radius:50%}.ceo .cx-centres .chip.on{border-color:var(--ink-1);color:var(--ink-1);font-weight:600}.ceo .cx-centres .chip.off .dot{opacity:.35}.ceo .cx-centres .hint{font-size:12px;color:var(--muted)}.ceo .cx-centres .prog-row{margin-top:10px}.ceo .cx-centres .prog-group{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.ceo .cx-centres .prog-label{min-width:auto;margin-left:2px}.ceo .cx-centres .prog-sep{color:var(--baseline);margin:0 4px}.ceo .cx-centres .ns{font-size:11px;font-weight:400;color:var(--muted);margin-left:8px;white-space:nowrap}.ceo .cx-centres .tile .lbl .ns{display:block;margin-left:0}.ceo .cx-centres .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px;margin-top:16px}.ceo .cx-centres .tile{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:13px 15px}.ceo .cx-centres .tile .lbl{font-size:12px;color:var(--ink-2)}.ceo .cx-centres .tile .val{font-size:27px;font-weight:600;margin-top:2px}.ceo .cx-centres .tile .delta{font-size:12px;margin-top:2px;color:var(--good)}.ceo .cx-centres .tile .delta.neutral{color:var(--muted)}.ceo .cx-centres .tblwrap{overflow-x:auto}.ceo .cx-centres .cx-table{font-size:13px}.ceo .cx-centres .cx-table td,.ceo .cx-centres .cx-table th{padding:6px 10px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ceo .cx-centres .cx-table thead th{color:var(--ink-2);font-weight:600;font-size:13px;border-bottom:1px solid var(--baseline)}.ceo .cx-centres .cx-table td:first-child,.ceo .cx-centres .cx-table th:first-child{text-align:left}.ceo .cx-centres .cx-table tbody tr{border-bottom:1px solid var(--grid)}.ceo .cx-centres .cx-table tbody tr:last-child{border-bottom:none}.ceo .cx-centres .cx-table tr.section td{padding-top:14px;font-weight:650;color:var(--ink-1);font-size:12.5px;border-bottom:1px solid var(--baseline)}.ceo .cx-centres .cx-table td.indent{padding-left:22px;color:var(--ink-2)}.ceo .cx-centres .cx-table td.num{color:var(--ink-1)}.ceo .cx-centres .cx-table th .thdot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.ceo .cx-centres .grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:860px){.ceo .cx-centres .grid2{grid-template-columns:1fr}}.ceo .cx-centres .chart-card h3{font-size:13.5px;font-weight:650;margin:0 0 2px}.ceo .cx-centres .chart-card .note{font-size:11.5px;color:var(--muted);margin:0 0 8px}.ceo .cx-centres .legend{display:flex;gap:14px;font-size:12px;color:var(--ink-2);margin:6px 0 2px;flex-wrap:wrap}.ceo .cx-centres .legend span{display:inline-flex;align-items:center;gap:6px}.ceo .cx-centres .key{display:inline-block;width:14px;height:0;border-top:2.5px solid;border-radius:2px}.ceo .cx-centres svg{display:block;width:100%;height:auto;overflow:visible}.ceo .cx-centres .tooltip{position:fixed;pointer-events:none;z-index:10;background:var(--surface-1);color:var(--ink-1);border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-size:12px;box-shadow:0 4px 14px rgba(0,0,0,.13);min-width:160px}.ceo .cx-centres .tooltip .t-term{font-weight:650;margin-bottom:4px}.ceo .cx-centres .tooltip .t-row{display:flex;align-items:center;gap:7px;margin-top:2px}.ceo .cx-centres .tooltip .t-row .key{width:11px}.ceo .cx-centres .tooltip .t-val{font-weight:650;margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ceo .cx-centres .tooltip .t-name{color:var(--ink-2)}.ceo .cx-centres footer{margin-top:34px;font-size:11.5px;color:var(--muted)}.ceo .cx-centres footer p{margin:4px 0 0}.ceo .cx-analytics{max-width:1080px;margin:0 auto}.ceo .cx-analytics h1{font-family:Archivo,-apple-system,Segoe UI,sans-serif;font-weight:700;font-size:22px;margin:18px 0 2px}.ceo .cx-analytics .sub{color:var(--muted);font-size:12.5px;margin:0 0 14px}.ceo .cx-filters{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:5;background:var(--bg);padding:10px 0 12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.ceo .cx-filters .frow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ceo .cx-flabel{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-weight:600;min-width:78px}.ceo .cx-analytics .cx-chips{display:flex;flex-wrap:wrap;gap:6px}.ceo .cx-chip{border:1px solid var(--line2);background:var(--chip);color:var(--muted);border-radius:99px;padding:3px 11px;font:inherit;font-size:12.5px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.ceo .cx-chip .dot{width:8px;height:8px;border-radius:50%}.ceo .cx-chip.on{border-color:var(--ink);color:var(--ink);font-weight:600}.ceo .cx-rangebox{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ceo .cx-rlabel{font-family:Archivo,-apple-system,sans-serif;font-weight:600;font-size:12.5px;min-width:118px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ceo .cx-slider{position:relative;height:26px;flex:1 1;min-width:200px;max-width:460px}.ceo .cx-slider input[type=range]{position:absolute;inset:0;width:100%;margin:0;padding:0;border:0;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;pointer-events:none;height:26px}.ceo .cx-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:16px;height:16px;border-radius:50%;background:var(--ink);border:2.5px solid var(--bg);box-shadow:0 0 0 1px var(--line2);cursor:-webkit-grab;cursor:grab;margin-top:0}.ceo .cx-slider input[type=range]::-moz-range-thumb{pointer-events:auto;width:13px;height:13px;border-radius:50%;background:var(--ink);border:2.5px solid var(--bg);cursor:grab}.ceo .cx-slider .track{left:0;right:0;background:var(--bg3)}.ceo .cx-slider .track,.ceo .cx-slider .trackfill{position:absolute;top:11px;height:4px;border-radius:2px}.ceo .cx-slider .trackfill{background:var(--ink);opacity:.55}.ceo .cx-analytics .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px;margin:16px 0}.ceo .cx-analytics .kpi{background:var(--bg2);border-radius:10px;padding:10px 14px 12px;box-shadow:var(--shadow)}.ceo .cx-analytics .kpi .l{font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:6px}.ceo .cx-analytics .kpi .l .sw{width:9px;height:9px;border-radius:2.5px}.ceo .cx-analytics .kpi .v{font-family:Archivo,-apple-system,sans-serif;font-weight:700;font-size:26px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:2px}.ceo .cx-analytics .kpi .d{font-size:11.5px;color:var(--muted)}.ceo .cx-analytics .cx-card{background:var(--bg2);border-radius:12px;padding:14px 16px;margin:0 0 14px;box-shadow:var(--shadow)}.ceo .cx-analytics .cx-card h2{font-family:Archivo,-apple-system,sans-serif;font-size:13.5px;font-weight:600;margin:0 0 2px}.ceo .cx-analytics .cx-card .note{font-size:11.5px;color:var(--muted);margin:0 0 8px}.ceo .cx-analytics .legend{display:flex;gap:14px;font-size:11.5px;color:var(--muted);margin:2px 0 6px;flex-wrap:wrap}.ceo .cx-analytics .legend b{color:var(--ink);font-weight:600}.ceo .cx-analytics .legend .sw{display:inline-block;width:9px;height:9px;border-radius:2.5px;margin-right:5px;vertical-align:-1px}.ceo .cx-analytics svg{display:block;overflow:visible}.ceo .cx-analytics svg text{fill:var(--muted);font:10.5px -apple-system,Segoe UI,sans-serif}.ceo .cx-analytics svg .vlab{font-weight:600;font-size:10px}.ceo .cx-analytics .tabs{display:flex;gap:4px;margin:0 0 10px;flex-wrap:wrap}.ceo .cx-analytics .tab{border:none;background:none;color:var(--muted);font:inherit;font-size:12.5px;padding:5px 10px;border-radius:8px;cursor:pointer}.ceo .cx-analytics .tab.on{background:var(--bg3);color:var(--ink);font-weight:600}.ceo .cx-analytics .hbar{display:grid;grid-template-columns:minmax(90px,150px) 1fr 118px;grid-gap:8px;gap:8px;align-items:center;padding:3px 0;font-size:12.5px}.ceo .cx-analytics .hbar .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.ceo .cx-analytics .hbar .cdot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.ceo .cx-analytics .hbar .bar{height:14px;position:relative}.ceo .cx-analytics .hbar .hseg{position:absolute;left:0;top:1px;height:12px;border-radius:0 3px 3px 0}.ceo .cx-analytics .hbar .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.ceo .cx-analytics .hbar .num b{color:var(--ink)}.ceo .cx-analytics .tblwrap{overflow-x:auto}.ceo .cx-analytics .cx-table{font-size:12.5px}.ceo .cx-analytics .cx-table td,.ceo .cx-analytics .cx-table th{padding:5px 10px;text-align:right;border-bottom:1px solid var(--line)}.ceo .cx-analytics .cx-table td:first-child,.ceo .cx-analytics .cx-table th:first-child{text-align:left}.ceo .cx-analytics .cx-table thead th{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-weight:600}.ceo .cx-analytics .cx-table tbody tr:last-child td{border-bottom:1px solid var(--line)}.ceo .cx-analytics .tip{position:fixed;pointer-events:none;background:var(--ink);color:var(--bg);border-radius:8px;padding:7px 10px;font-size:11.5px;line-height:1.5;z-index:20;max-width:240px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ceo .cx-analytics .foot{font-size:11px;color:var(--faint);margin-top:6px}.ceo .cx-analytics .toggle{font:inherit;font-size:11.5px;color:var(--muted);cursor:pointer;border:1px solid var(--line2);background:none;border-radius:8px;padding:3px 9px}.ceo .cx-kpi{--kx-hit:#1d7a45;--kx-hit-bg:#dff3e6;--kx-hit2-bg:#bfe6cc;--kx-hit3:#ffffff;--kx-hit3-bg:#2e9a5a;--kx-miss:#a83a4a;--kx-miss-bg:#fbe3e7;--kx-pend:#8a5a00;--kx-pend-bg:#fdf0d2;--kx-t1:#7fa9d6;--kx-t2:#3f7fc4;--kx-t3:#1f4f8a;--kx-grid:#e1ecf7;--kx-sep:#bcd2e8}@media (prefers-color-scheme:dark){.ceo .cx-kpi{--kx-hit:#7fd8a0;--kx-hit-bg:#1d3b2a;--kx-hit2-bg:#24533a;--kx-hit3:#0f1926;--kx-hit3-bg:#5cc485;--kx-miss:#f0a0ac;--kx-miss-bg:#45232b;--kx-pend:#f2c46b;--kx-pend-bg:#3d3018;--kx-t1:#6f90b5;--kx-t2:#8fb6e6;--kx-t3:#cfe2fa;--kx-grid:#22344a;--kx-sep:#38506c}}.ceo .cx-kpi .kx-muted{color:var(--muted)}.ceo .cx-kpi .kx-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;vertical-align:0}.ceo .cx-kpi .kx-badge,.ceo .cx-kpi .kx-g,.ceo .cx-kpi .kx-mark,.ceo .cx-kpi .kx-res{display:inline-block;font-size:11px;font-weight:650;line-height:1.5;padding:0 7px;border-radius:99px;white-space:nowrap;vertical-align:1px}.ceo .cx-kpi .kx-res.miss{background:var(--kx-miss-bg);color:var(--kx-miss)}.ceo .cx-kpi .kx-res.hit,.ceo .cx-kpi .kx-res.t1{background:var(--kx-hit-bg);color:var(--kx-hit)}.ceo .cx-kpi .kx-res.t2{background:var(--kx-hit2-bg);color:var(--kx-hit)}.ceo .cx-kpi .kx-res.t3{background:var(--kx-hit3-bg);color:var(--kx-hit3)}.ceo .cx-kpi .kx-g{font-weight:600}.ceo .cx-kpi .kx-g.none{color:var(--muted);background:var(--bg3)}.ceo .cx-kpi .kx-g.pending{color:var(--kx-pend);background:var(--kx-pend-bg)}.ceo .cx-kpi .kx-g.ok{color:var(--kx-hit);background:var(--kx-hit-bg)}.ceo .cx-kpi .kx-g.breached{color:var(--kx-miss);background:var(--kx-miss-bg)}.ceo .cx-kpi .kx-badge.draft{color:var(--kx-pend);border:1px dashed var(--kx-pend);letter-spacing:.05em}.ceo .cx-kpi .kx-badge.announced{color:var(--ink);background:var(--bg3)}.ceo .cx-kpi .kx-badge.scored{color:var(--muted);background:var(--bg3)}.ceo .cx-kpi .kx-mark.hit{color:var(--kx-hit);background:var(--kx-hit-bg)}.ceo .cx-kpi .kx-mark.miss{color:var(--kx-miss);background:var(--kx-miss-bg)}.ceo .cx-kpi .cx-table td,.ceo .cx-kpi .cx-table th{vertical-align:top}.ceo .cx-kpi .kx-summary td,.ceo .cx-kpi .kx-summary th{text-align:left;padding:7px 12px}.ceo .cx-kpi .kx-summary td:first-child{font-weight:600;white-space:nowrap}.ceo .cx-kpi .kx-summary{min-width:780px}.ceo .cx-kpi .kx-history{min-width:460px}.ceo .cx-kpi .kx-cell .l1{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.ceo .cx-kpi .kx-cell .l2{font-size:11.5px;color:var(--muted);margin-top:2px}.ceo .cx-kpi .kx-cell b{font-weight:650}.ceo .cx-kpi td.kx-span{vertical-align:middle;color:var(--muted);font-style:italic;text-align:center;background:var(--bg)}.ceo .cx-kpi tr.kx-total td{font-weight:600;border-top:1.5px solid var(--line2)}.ceo .cx-kpi .kx-history td,.ceo .cx-kpi .kx-history th{text-align:center;white-space:nowrap}.ceo .cx-kpi .kx-history td.hit{background:var(--kx-hit-bg);color:var(--kx-hit);font-weight:600}.ceo .cx-kpi .kx-history td.miss{color:var(--ink)}.ceo .cx-kpi .kx-history td .lab{font-size:10.5px;font-weight:650;letter-spacing:.03em;margin-right:3px}.ceo .cx-kpi .kx-history td.miss .lab{color:var(--kx-miss)}.ceo .cx-kpi .kx-picker{margin:4px 0 12px}.ceo .cx-kpi .kx-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 14px;gap:0 14px}@media (max-width:860px){.ceo .cx-kpi .kx-grid{grid-template-columns:1fr}}.ceo .cx-kpi .kx-centre-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ceo .cx-kpi .kx-centre-head h2{margin:0 auto 0 0;font-size:15px}.ceo .cx-kpi .kx-chart{position:relative;width:100%}.ceo .cx-kpi .kx-chart svg{width:100%;height:auto;touch-action:pan-y}.ceo .cx-kpi .kx-chart .kx-grid{stroke:var(--kx-grid);stroke-width:1}.ceo .cx-kpi .kx-chart .kx-sep{stroke:var(--kx-sep);stroke-width:1;stroke-dasharray:2 3}.ceo .cx-kpi .kx-chart .kx-hover{stroke:var(--line2);stroke-width:1}.ceo .cx-kpi .kx-chart .kx-seglab{fill:var(--ink);font-weight:600}.ceo .cx-kpi .kx-chart .kx-tierlab{font-size:9.5px;font-weight:600}.ceo .cx-kpi .kx-chart .kx-ptlab{fill:var(--ink);font-weight:650;font-size:10.5px}.ceo .cx-kpi .kx-chart .kx-pt{stroke:var(--bg2);stroke-width:2}.ceo .cx-kpi .kx-chart .kx-pt.hit{fill:var(--kx-hit3-bg)}.ceo .cx-kpi .kx-chart .kx-pt.miss{fill:var(--kx-miss)}.ceo .cx-kpi .kx-chart .kx-pt.plain{fill:var(--muted)}.ceo .cx-kpi .kx-nochart{padding:30px 0;text-align:center}.ceo .cx-kpi .kx-facts{display:grid;grid-template-columns:max-content 1fr;grid-gap:5px 12px;gap:5px 12px;margin:10px 0 2px;font-size:12.5px}.ceo .cx-kpi .kx-facts dt{color:var(--muted);font-weight:600;white-space:nowrap}.ceo .cx-kpi .kx-facts dd{margin:0}.ceo .cx-kpi .kx-side{list-style:none;margin:0;padding:0}.ceo .cx-kpi .kx-side li{margin:0 0 2px}.ceo .cx-kpi .kx-side .kx-mark{margin-right:6px}.ceo .cx-kpi .kx-form{margin-top:18px}.ceo .cx-kpi .kx-fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px 12px;gap:10px 12px;margin:8px 0 12px}.ceo .cx-kpi .kx-fgrid label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--muted);font-weight:600}.ceo .cx-kpi .kx-fgrid input,.ceo .cx-kpi .kx-fgrid select{font:inherit;font-size:13px;font-weight:400;color:var(--ink);background:var(--chip);border:1px solid var(--line2);border-radius:8px;padding:5px 8px;width:100%;max-width:none;margin:0}.ceo .cx-kpi .kx-factions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px}.ceo .cx-kpi .kx-factions button{font:inherit;font-size:13px;font-weight:600;background:var(--ink);color:var(--bg2);border:0;border-radius:8px;padding:6px 14px;cursor:pointer}.ceo .cx-kpi .kx-factions button:disabled{opacity:.6;cursor:default}.ceo .cx-kpi .kx-err{color:var(--kx-miss);font-weight:600}.ceo .cx-kpi .kx-ok{color:var(--kx-hit);font-weight:600}@media (max-width:640px){.ceo .cx-flabel{min-width:100%}.ceo .cx-analytics .hbar{grid-template-columns:minmax(70px,110px) 1fr 105px}}body.is-staging{background:#fff4ea}body.is-staging .masthead{background:#fde4cf;border-bottom:2px solid #c9600f}body.is-staging .login-card{border-top:4px solid #c9600f}@media (prefers-color-scheme:light){body:not(.is-staging):has(.ceo){background:#f3f8fd}body:not(.is-staging):has(.ceo) .masthead{background:#e6f0fa;border-bottom-color:#bcd2e8}}.sales .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sales td.num{white-space:nowrap}.sales-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.7rem;gap:.7rem;margin:0 0 1rem}.sales-card{padding:.8rem 1rem;display:flex;flex-direction:column;gap:.15rem}.sales-n{font-family:var(--serif);font-size:1.7rem;font-weight:600;line-height:1.1;text-decoration:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sales-n:hover{text-decoration:underline}.sales-n.plain{color:var(--ink)}.sales-n.plain:hover{text-decoration:none}.sales-l{font-size:.78rem;color:var(--muted);font-weight:600}.sales-table td .sales-n{font-family:var(--sans);font-size:.95rem}.sales-table thead th{white-space:normal;min-width:5.5rem}.sales-table thead th:first-child{min-width:0}.sales-overdue{color:var(--danger-text);font-weight:600}.sales-sub{margin:-.2rem 0 .7rem;line-height:1.55;max-width:62rem}@media (max-width:640px){.sales-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.pill.ps-draft{background:#eeede8;color:var(--ink)}.pill.ps-submitted{background:#e3f2fa;color:var(--accent-ink)}.pill.ps-approved{background:#dcebe0;color:#1f5a33}.pill.ps-sent_back{background:#f3eede;color:#7a5d18}.pill.ps-withdrawn{background:#f2e3df;color:var(--danger-text)}.approvals-error{margin:.6rem 0 1rem}