.cpasp-cs{--cs-accent:#01B3B0;--cs-accent-d:#018C8A;--cs-btn-text:#fff;--cs-ghost-bg:#fff;--cs-heading:#0B1F2A;--cs-text:#4A5B63;--cs-card-bg:#fff;--cs-border:#DDE7EA;--cs-chip-bg:#EAF6F6;--cs-chip-text:#0B5F66;--cs-pill-bg:#E5F7EE;--cs-pill-text:#0E7A4D;--cs-avatar-bg:#E7EEF0;--cs-avatar-fg:#9DB0B6;--cs-note-bg:#EAF3FB;--cs-note-text:#24445C;--cs-radius:16px;--cs-btn-radius:10px;--cs-pad:24px;--cs-gap:24px;--cs-shadow:0 1px 2px rgba(6,42,48,.04);--cs-shadow-h:0 14px 32px rgba(6,42,48,.10);font-family:Inter,system-ui,sans-serif;color:var(--cs-text);}
.cpasp-cs *{box-sizing:border-box;}
.cpasp-cs__tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;}
.cpasp-cs__tabs button{appearance:none;border:1px solid var(--cs-border);background:#fff;color:#0B1F2A;font:600 14px/1 Inter,sans-serif;padding:10px 18px;border-radius:999px;cursor:pointer;transition:all .15s;}
.cpasp-cs__tabs button:hover{border-color:var(--cs-accent);color:var(--cs-accent-d);}
.cpasp-cs__tabs button.is-active{background:#062A30;border-color:#062A30;color:#fff;}
.cpasp-cs__grid-wrap{transition:opacity .15s;}
.cpasp-cs__grid-wrap.is-loading{opacity:.45;}
.cpasp-cs__grid{display:grid;gap:var(--cs-gap);grid-template-columns:repeat(3,minmax(0,1fr));}
.cpasp-cs__grid.cols-1{grid-template-columns:minmax(0,1fr);}
.cpasp-cs__grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.cpasp-cs__grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
@media(max-width:1024px){.cpasp-cs__grid.cols-3,.cpasp-cs__grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.cpasp-cs__grid,.cpasp-cs__grid.cols-2,.cpasp-cs__grid.cols-3,.cpasp-cs__grid.cols-4{grid-template-columns:minmax(0,1fr);}}
.cpasp-cs__card{display:flex;flex-direction:column;background:var(--cs-card-bg);border:1px solid var(--cs-border);border-radius:var(--cs-radius);padding:var(--cs-pad);box-shadow:var(--cs-shadow);transition:transform .2s,box-shadow .2s;}
.cpasp-cs.is-hover-lift .cpasp-cs__card:hover{transform:translateY(-3px);box-shadow:var(--cs-shadow-h);}
.cpasp-cs__head{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px;}
.cpasp-cs__avatar{position:relative;flex:0 0 72px;width:72px;height:72px;border-radius:50%;color:var(--cs-avatar-fg);overflow:visible;}
.cpasp-cs.is-av-rounded .cpasp-cs__avatar{border-radius:16px;}
.cpasp-cs.is-av-square .cpasp-cs__avatar{border-radius:4px;}
.cpasp-cs__avatar svg{width:100%;height:100%;display:block;background:var(--cs-avatar-bg);clip-path:circle(50%);}
.cpasp-cs.is-av-rounded .cpasp-cs__avatar svg{clip-path:inset(0 round 16px);}
.cpasp-cs.is-av-square .cpasp-cs__avatar svg{clip-path:inset(0 round 4px);}
.cpasp-cs__avatar span{position:absolute;right:-6px;bottom:-3px;background:#fff;color:#0B1F2A;font:700 10px/1 Inter,sans-serif;padding:4px 6px;border-radius:999px;border:1px solid var(--cs-border);box-shadow:0 1px 3px rgba(6,42,48,.18);}
.cpasp-cs__id{min-width:0;}
.cpasp-cs__pill{display:inline-block;background:var(--cs-pill-bg);color:var(--cs-pill-text);font:600 12px/1 Inter,sans-serif;padding:6px 10px;border-radius:999px;margin-bottom:8px;}
.cpasp-cs__pill.is-int{background:#FFF3DD;color:#9A5B00;}
.cpasp-cs__id h3{margin:0 0 4px;font:700 19px/1.25 Inter,sans-serif;color:var(--cs-heading);}
.cpasp-cs__code{margin:0;font:500 13.5px/1.4 "IBM Plex Mono",ui-monospace,monospace;color:var(--cs-text);}
.cpasp-cs__loc{margin:4px 0 0;font-size:13.5px;color:var(--cs-text);}
.cpasp-cs__stats{list-style:none;margin:0 0 16px;padding:14px 0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border-top:3px double var(--cs-border);border-bottom:1px solid var(--cs-border);}
.cpasp-cs__stats li{text-align:center;padding:0 6px;margin:0;}
.cpasp-cs__stats li+li{border-left:1px solid var(--cs-border);}
.cpasp-cs__stats strong{display:block;font:600 20px/1.2 "IBM Plex Mono",ui-monospace,monospace;color:var(--cs-heading);}
.cpasp-cs__stats span{display:block;font-size:12px;line-height:1.3;margin-top:2px;}
.cpasp-cs__chips{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:6px;}
.cpasp-cs__chips li{background:var(--cs-chip-bg);color:var(--cs-chip-text);font:500 12.5px/1 Inter,sans-serif;padding:7px 10px;border-radius:8px;margin:0;}
.cpasp-cs__hl{list-style:none;margin:0 0 18px;padding:0;}
.cpasp-cs__hl li{position:relative;padding:0 0 0 24px;margin:0 0 8px;font-size:14.5px;line-height:1.5;}
.cpasp-cs__hl li::before{content:"";position:absolute;left:0;top:3px;width:15px;height:15px;border-radius:50%;background:var(--cs-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='m4 8.5 2.5 2.5L12 5.5'/%3E%3C/svg%3E") center/100% no-repeat;}
.cpasp-cs__rate{margin:0 0 14px;font-size:14px;}
.cpasp-cs__rate strong{color:var(--cs-heading);font-family:"IBM Plex Mono",ui-monospace,monospace;}
.cpasp-cs__cta{margin-top:auto;display:grid;gap:10px;}
.cpasp-cs.is-btn-inline .cpasp-cs__cta{grid-auto-flow:column;grid-auto-columns:1fr;}
.cpasp-cs__btn{display:block;text-align:center;text-decoration:none;background:var(--cs-accent);color:var(--cs-btn-text)!important;font:600 15px/1 Inter,sans-serif;padding:14px 18px;border-radius:var(--cs-btn-radius);border:1.5px solid var(--cs-accent);transition:all .15s;}
.cpasp-cs__btn:hover{background:var(--cs-accent-d);border-color:var(--cs-accent-d);}
.cpasp-cs__btn.is-ghost{background:var(--cs-ghost-bg);color:var(--cs-accent-d)!important;}
.cpasp-cs__btn.is-ghost:hover{background:var(--cs-chip-bg);}
.cpasp-cs.is-b2-solid .cpasp-cs__btn.is-ghost{background:var(--cs-heading);border-color:var(--cs-heading);color:var(--cs-card-bg)!important;}
.cpasp-cs__privacy{display:flex;gap:10px;align-items:flex-start;margin:28px 0 0;padding:14px 18px;background:var(--cs-note-bg);border-radius:12px;font-size:14px;line-height:1.55;color:var(--cs-note-text);}
.cpasp-cs__privacy svg{flex:0 0 18px;margin-top:2px;color:#1769C2;}
.cpasp-cs__empty{text-align:center;background:#F3F7F8;border:1px solid var(--cs-border);border-radius:var(--cs-radius);padding:48px 24px;}
.cpasp-cs__empty h3{margin:0 0 10px;font:700 22px/1.3 Inter,sans-serif;color:#0B1F2A;}
.cpasp-cs__empty p{margin:0 auto 22px;max-width:520px;}
.cpasp-cs__empty .cpasp-cs__btn{display:inline-block;}
.cpasp-cs__admin{margin:12px 0 0;font-size:12.5px;color:#9A5B00;}

/* ---- share button, share menu, profile popup ---- */
.cpasp-cs__card{position:relative;}
.cpasp-cs__id{padding-right:30px;}
.cpasp-cs__share{position:absolute;top:14px;right:14px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cs-border);background:var(--cs-card-bg);color:var(--cs-text);border-radius:50%;cursor:pointer;padding:0;transition:all .15s;}
.cpasp-cs__share:hover,.cpasp-cs__share:focus-visible{color:var(--cs-accent-d);border-color:var(--cs-accent);background:var(--cs-chip-bg);outline:none;}
.cpasp-cs__card.is-target{animation:cpaspPulse 2.4s ease-out 1;}
@keyframes cpaspPulse{0%{box-shadow:0 0 0 0 var(--cs-accent);}40%{box-shadow:0 0 0 8px rgba(1,179,176,.28);}100%{box-shadow:var(--cs-shadow);}}
.cpasp-cs__detail[hidden]{display:none!important;}
.cpasp-sharepop{position:absolute;z-index:100000;display:flex;flex-direction:column;min-width:190px;background:#fff;border:1px solid #DDE7EA;border-radius:12px;padding:6px;box-shadow:0 14px 36px rgba(6,42,48,.2);font-family:Inter,system-ui,sans-serif;}
.cpasp-sharepop span{font:700 11px/1 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#60727A;padding:8px 10px 6px;}
.cpasp-sharepop a,.cpasp-sharepop button{display:block;text-align:left;text-decoration:none;background:transparent;border:0;border-radius:8px;padding:9px 10px;font:500 14px/1.2 Inter,system-ui,sans-serif;color:#0B1F2A;cursor:pointer;}
.cpasp-sharepop a:hover,.cpasp-sharepop button:hover{background:#EAF6F6;color:#018C8A;}
html.cpasp-md-lock{overflow:hidden;}
.cpasp-md-root{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;font-family:Inter,system-ui,sans-serif;}
.cpasp-md-back{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(11,70,80,.72),rgba(4,24,28,.86));backdrop-filter:blur(3px);animation:cpaspFade .2s ease-out;}
.cpasp-md-dialog{position:relative;width:100%;max-width:960px;height:min(90vh,760px);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.06);animation:cpaspPop .26s cubic-bezier(.2,.8,.2,1);outline:none;}
@keyframes cpaspFade{from{opacity:0}to{opacity:1}}
@keyframes cpaspPop{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cpasp-md-back,.cpasp-md-dialog,.cpasp-cs__card.is-target{animation:none;}}
.cpasp-md-body{height:100%;}
.cpasp-md-close{position:absolute;top:16px;right:16px;z-index:3;width:38px;height:38px;border:1px solid #DDE7EA;border-radius:50%;background:#fff;color:#0B1F2A;font:400 24px/1 Inter,system-ui,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 3px;transition:all .15s;}
.cpasp-md-close:hover{background:#062A30;border-color:#062A30;color:#fff;}
.cpasp-md{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;height:100%;}
/* left panel */
.cpasp-md__side,.cpasp-md__cta{background:linear-gradient(165deg,#062A30 0%,#0B4650 100%);color:#C9DFE1;position:relative;}
.cpasp-md__side{grid-column:1;grid-row:1;padding:28px 24px 12px;overflow:auto;background-image:repeating-linear-gradient(to bottom,rgba(95,227,224,0) 0,rgba(95,227,224,0) 35px,rgba(95,227,224,.06) 35px,rgba(95,227,224,.06) 36px),linear-gradient(165deg,#062A30 0%,#0B4650 100%);}
.cpasp-md__avatar{position:relative;width:76px;height:76px;border-radius:50%;color:rgba(155,239,234,.62);box-shadow:0 0 0 2px rgba(95,227,224,.4),0 6px 18px rgba(0,0,0,.25);overflow:visible;margin:0 0 16px;}
.cpasp-md__avatar svg{width:100%;height:100%;display:block;clip-path:circle(50%);background:radial-gradient(circle at 50% 28%,rgba(95,227,224,.30),rgba(95,227,224,.07) 70%),rgba(6,42,48,.55);}
.cpasp-md__avatar span{position:absolute;right:-8px;bottom:-4px;background:#fff;color:#062A30;font:700 10px/1 Inter,system-ui,sans-serif;padding:4px 7px;border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.3);}
.cpasp-md__pill{display:inline-block;background:rgba(95,227,224,.16);color:#5FE3E0;font:700 11px/1 Inter,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:999px;margin:0 0 10px;}
.cpasp-md__pill.is-int{background:rgba(247,144,9,.2);color:#FEC84B;}
.cpasp-md__title{margin:0 0 6px;font:750 22px/1.2 Inter,system-ui,sans-serif;color:#fff;letter-spacing:-.01em;}
.cpasp-md__code{margin:0 0 10px;font:500 13.5px "IBM Plex Mono",ui-monospace,monospace;color:#9BEFEA;}
.cpasp-md__loc{display:flex;align-items:center;gap:7px;margin:0 0 16px;font-size:14px;color:#C9DFE1;}
.cpasp-md__loc svg{flex:0 0 16px;color:#5FE3E0;}
.cpasp-md__kpis{list-style:none;margin:0 0 14px;padding:0;border-top:3px double rgba(255,255,255,.22);}
.cpasp-md__kpis li{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:9px 0;margin:0;border-bottom:1px solid rgba(255,255,255,.12);}
.cpasp-md__kpis strong{font:600 22px/1 "IBM Plex Mono",ui-monospace,monospace;color:#fff;}
.cpasp-md__kpis span{font-size:13px;color:#C9DFE1;text-align:right;}
.cpasp-md__side>*{position:relative;z-index:1;}
.cpasp-md__bg{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;z-index:0!important;pointer-events:none;}
.cpasp-md__share{margin:4px 0 0;}
.cpasp-md__share-label{display:block;margin:0 0 10px;font:700 11px/1 Inter,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#9BEFEA;}
.cpasp-md__socs{display:flex;flex-wrap:wrap;gap:8px;}
.cpasp-md__soc{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(95,227,224,.38);color:#fff!important;cursor:pointer;padding:0;text-decoration:none;transition:all .15s;backdrop-filter:blur(2px);}
.cpasp-md__soc svg{width:18px;height:18px;display:block;}
.cpasp-md__soc:hover,.cpasp-md__soc:focus-visible{background:#5FE3E0;border-color:#5FE3E0;color:#062A30!important;transform:translateY(-2px);outline:none;}
.cpasp-md__soc.is-done{background:#12B76A;border-color:#12B76A;color:#fff!important;}
/* actions */
.cpasp-md__cta{grid-column:1;grid-row:2;padding:8px 24px 24px;display:grid;gap:8px;}
.cpasp-md__btn{display:block;text-align:center;text-decoration:none;font:650 15px/1 Inter,system-ui,sans-serif;padding:14px 18px;border-radius:12px;background:#5FE3E0;color:#062A30!important;border:1.5px solid #5FE3E0;transition:all .15s;}
.cpasp-md__btn:hover{background:#8CF0EC;border-color:#8CF0EC;transform:translateY(-1px);}
.cpasp-md__btn.is-ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.35);}
.cpasp-md__btn.is-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff;}
/* right panel */
.cpasp-md__main{grid-column:2;grid-row:1 / span 2;overflow:auto;padding:40px 44px 28px;background:#fff;color:var(--cs-text);}
.cpasp-md__lead{margin:0 0 26px;padding-right:40px;font-size:17px;line-height:1.7;color:#0B1F2A;font-weight:500;}
.cpasp-md__sec{margin:0 0 26px;}
.cpasp-md__sec h4{margin:0 0 14px;font:700 11.5px/1 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#0B1F2A;padding-bottom:9px;border-bottom:3px double #DDE7EA;display:inline-block;}
.cpasp-md__main .cpasp-cs__chips{margin:0;}
.cpasp-md__tl{list-style:none;margin:0;padding:0 0 0 22px;position:relative;}
.cpasp-md__tl::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:linear-gradient(#01B3B0,#DDE7EA);border-radius:2px;}
.cpasp-md__tl li{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 14px;padding:0 0 16px;margin:0;}
.cpasp-md__tl li::before{content:"";position:absolute;left:-22px;top:5px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid #01B3B0;box-sizing:border-box;}
.cpasp-md__tl li:last-child{padding-bottom:0;}
.cpasp-md__tl strong{font:650 15px/1.4 Inter,system-ui,sans-serif;color:#0B1F2A;}
.cpasp-md__tl span{font:500 12.5px "IBM Plex Mono",ui-monospace,monospace;color:#60727A;white-space:nowrap;}
.cpasp-md__two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;}
.cpasp-md__list{list-style:none;margin:0;padding:0;}
.cpasp-md__list li{position:relative;padding:0 0 0 24px;margin:0 0 10px;font-size:14.5px;line-height:1.5;color:#33444C;}
.cpasp-md__list li::before{content:"";position:absolute;left:3px;top:8px;width:7px;height:7px;border-radius:50%;background:#01B3B0;}
.cpasp-md__list.is-check li::before{left:0;top:2px;width:17px;height:17px;border-radius:50%;background:#E5F7EE url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230E7A4D' stroke-width='2' d='m4 8.5 2.5 2.5L12 5.5'/%3E%3C/svg%3E") center/100% no-repeat;}
.cpasp-md__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0;}
.cpasp-md__facts div{background:#F3F7F8;border:1px solid #E5EDEF;border-radius:12px;padding:12px 14px;}
.cpasp-md__facts dt{margin:0 0 4px;font:600 11px/1 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.07em;color:#60727A;}
.cpasp-md__facts dd{margin:0;font:650 15px/1.3 Inter,system-ui,sans-serif;color:#0B1F2A;}
.cpasp-md__foot{margin-top:6px;padding-top:20px;border-top:1px solid #E5EDEF;}
.cpasp-md__note{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;padding:12px 14px;background:#EAF3FB;color:#24445C;border-radius:12px;font-size:13px;line-height:1.55;}
.cpasp-md__note svg{flex:0 0 16px;margin-top:2px;color:#1769C2;}
/* tablet / phone */
@media(max-width:820px){
  .cpasp-md-root{padding:0;align-items:flex-end;}
  .cpasp-md-dialog{max-width:none;height:94vh;border-radius:20px 20px 0 0;overflow:hidden;}
  .cpasp-md{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;}
  .cpasp-md__side{grid-column:1;grid-row:1;display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center;padding:22px 20px 16px;overflow:visible;}
  .cpasp-md__avatar{grid-row:1 / span 4;width:64px;height:64px;margin:0;}
  .cpasp-md__pill,.cpasp-md__title,.cpasp-md__code,.cpasp-md__loc{grid-column:2;margin-bottom:4px;}
  .cpasp-md__title{font-size:20px;}
  .cpasp-md__kpis{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:14px 0 12px;}
  .cpasp-md__kpis li{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 8px 8px 0;border-bottom:0;}
  .cpasp-md__kpis strong{font-size:20px;}
  .cpasp-md__kpis span{text-align:left;font-size:12px;}
  .cpasp-md__share{grid-column:1 / -1;}
  .cpasp-md__main{grid-column:1;grid-row:2;padding:22px 20px;}
  .cpasp-md__lead{padding-right:0;font-size:16px;}
  .cpasp-md__two{grid-template-columns:1fr;}
  .cpasp-md__cta{grid-column:1;grid-row:3;grid-template-columns:1fr 1fr;padding:12px 16px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -10px 24px rgba(6,42,48,.18);}
  .cpasp-md-close{top:12px;right:12px;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#fff;}
}
@media(max-width:420px){.cpasp-md__cta{grid-template-columns:1fr;}}
.cpasp-cs__chips li.is-more{background:transparent;color:var(--cs-text);border:1px dashed var(--cs-border);}
