/* HeartBug presentation stylesheet 26 (extracted from inline <style>) */

  .p18-slide .inner{position:relative;width:min(1360px,100%);height:100%;display:flex;flex-direction:column;padding:1vh 0}
  .p18-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
  .p18-hint{display:flex;align-items:center;gap:9px;padding-bottom:6px;margin-right:150px;font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
  .p18-hint i{width:8px;height:8px;border-radius:50%;background:var(--red);animation:p18Pulse 1.6s infinite}
  @keyframes p18Pulse{0%,100%{opacity:.35}50%{opacity:1}}
  .p18-body{flex:1;min-height:0;display:flex;align-items:center;gap:clamp(24px,3vw,54px)}
  /* fan of cards — selected in front, others stacked behind to the left */
  .p18-fan{position:relative;flex:0 0 clamp(300px,26vw,400px);height:100%;min-height:320px}
  .p18-card{position:absolute;right:0;top:50%;width:clamp(216px,18.5vw,280px);aspect-ratio:3/3.9;border-radius:18px;overflow:hidden;
    background:#F3F0EB;border:1.5px solid var(--line);cursor:pointer;
    box-shadow:0 26px 54px -26px rgba(20,17,20,.35);
    transition:transform .85s var(--ease),box-shadow .5s,border-color .4s,filter .5s}
  .p18-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
  .p18-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(20,17,20,.72) 100%)}
  .p18-card .pills{position:absolute;left:14px;right:14px;bottom:13px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
  .p18-card .pill{display:inline-flex;align-items:center;gap:7px;padding:7px 16px;border-radius:99px;
    font-size:13px;font-weight:800;letter-spacing:.04em;background:rgba(255,255,255,.72);color:var(--ink);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.85);
    box-shadow:0 8px 20px -8px rgba(20,17,20,.45)}
  .p18-card .pill.age{background:rgba(20,17,20,.78);color:#fff;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;border-color:rgba(20,17,20,.5)}
  .p18-card .pill.age i{width:5px;height:5px;border-radius:50%;background:var(--red)}
  .p18-card .mini{width:52%;height:12px;opacity:.45}
  .p18-card .mini path{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;
    stroke-dasharray:240;stroke-dashoffset:240;animation:p18Ecg 3.2s linear infinite}
  @keyframes p18Ecg{0%{stroke-dashoffset:240;opacity:1}82%{stroke-dashoffset:0;opacity:1}92%{opacity:0}100%{stroke-dashoffset:0;opacity:0}}
  /* slots: 0 = front, 1..3 = stacked behind left */
  .p18-card.s0{transform:translateY(-50%) rotate(0deg) scale(1);z-index:5;border-color:var(--red);
    box-shadow:0 34px 70px -26px rgba(228,0,43,.4);cursor:default}
  .p18-card.s1{transform:translateY(-50%) translateX(-16%) rotate(-2.5deg) scale(.93);z-index:4;filter:grayscale(.75);opacity:.62}
  .p18-card.s2{transform:translateY(-50%) translateX(-33%) rotate(-5.5deg) scale(.86);z-index:3;filter:grayscale(.85);opacity:.5}
  .p18-card.s3{transform:translateY(-50%) translateX(-51%) rotate(-9deg) scale(.79);z-index:2;filter:grayscale(.9);opacity:.4}
  .p18-card:not(.s0):hover{filter:grayscale(.15);opacity:.95;border-color:var(--line-r)}
  .p18-card{transition:transform .65s var(--ease),filter .45s var(--ease),opacity .45s var(--ease),border-color .3s,box-shadow .45s var(--ease)}
  /* hover the stack -> fan out all four cases for picking */
  .p18-fan.open{z-index:30}
  .p18-fan.open .p18-card{filter:none;opacity:1;cursor:pointer;box-shadow:0 30px 60px -24px rgba(20,17,20,.35)}
  /* 2x2 picker grid, centred inside the fan container — no overflow, no jitter */
  .p18-fan.open .p18-card.s0{transform:translateY(-97%) translateX(-3%) rotate(0) scale(.5)}
  .p18-fan.open .p18-card.s1{transform:translateY(-97%) translateX(-91%) rotate(0) scale(.5)}
  .p18-fan.open .p18-card.s2{transform:translateY(3%) translateX(-3%) rotate(0) scale(.5)}
  .p18-fan.open .p18-card.s3{transform:translateY(3%) translateX(-91%) rotate(0) scale(.5)}
  .p18-fan.open .p18-card:hover{border-color:var(--red);box-shadow:0 26px 54px -22px rgba(228,0,43,.45);z-index:9;filter:none;opacity:1}
  .p18-fan.open .p18-card.s0:hover{transform:translateY(-97%) translateX(-3%) scale(.56)}
  .p18-fan.open .p18-card.s1:hover{transform:translateY(-97%) translateX(-91%) scale(.56)}
  .p18-fan.open .p18-card.s2:hover{transform:translateY(3%) translateX(-3%) scale(.56)}
  .p18-fan.open .p18-card.s3:hover{transform:translateY(3%) translateX(-91%) scale(.56)}
  .p18-fan.open .p18-card.s0{border-color:var(--red)}
  /* right panel */
  .p18-panel{flex:1;min-width:0;display:flex;flex-direction:column;gap:clamp(12px,2vh,20px);
    transition:opacity .35s var(--ease),transform .35s var(--ease)}
  .p18-panel.swap{opacity:0;transform:translateY(10px)}
  .p18-hx .who{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--red);margin-bottom:9px}
  .p18-hx ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 26px}
  .p18-hx li{position:relative;padding-left:18px;font-size:clamp(13px,1.12vw,15.5px);font-weight:300;color:var(--ink);line-height:1.5}
  .p18-hx li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;border:2px solid var(--red)}
  .p18-hx li b{font-weight:700;color:var(--red)}
  .p18-hx li{transition:font-size .45s var(--ease)}
  .p18-hx:hover li{font-size:clamp(17px,1.46vw,20.5px)}
  .p18-panel:has(.p18-hx:hover) .p18-find img{height:13vh}
  .p18-panel:has(.p18-hx:hover) .p18-find{flex:none}
  .p18-find{position:relative;border:1.5px solid var(--line-r);border-radius:14px;background:#fff;padding:13px 18px;
    display:flex;flex-direction:column;gap:7px;box-shadow:0 18px 40px -24px rgba(228,0,43,.3);min-height:0;overflow:hidden}
  .p18-find .lbl{font-size:9px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--red)}
  .p18-find .dx{font-size:clamp(18px,1.8vw,25px);font-weight:800;letter-spacing:-.01em;line-height:1.15}
  .p18-find .dx span{color:var(--red)}
  .p18-find img{display:block;width:100%;height:24vh;object-fit:contain;border-radius:8px;cursor:zoom-in;
    background:
      repeating-linear-gradient(0deg,rgba(228,0,43,.05) 0 1px,transparent 1px 14px),
      repeating-linear-gradient(90deg,rgba(228,0,43,.05) 0 1px,transparent 1px 14px),#fff;
    border:1px solid rgba(228,0,43,.12);
    clip-path:inset(0 100% 0 0);transition:clip-path 1.1s var(--ease) .15s,height .45s var(--ease)}
  .p18-panel:not(.swap) .p18-find img{clip-path:inset(0 0 0 0)}
  .p18-frame{position:relative}
  .p18-find .ind{font-size:clamp(11.5px,1.05vw,13.5px);font-weight:300;color:var(--muted);line-height:1.5}
  .p18-find .ind b{font-weight:700;color:var(--red)}
  @media (max-width:1490px) and (max-height:950px){
    .p18-find{
      scale:.95;
      translate:-1vw 0;
      transform-origin:center;
    }
  }
  @media (max-width:1490px) and (max-height:950px) and (min-width:901px){
    .p18-fan.open{translate:3vw 0}
    .p18-fan.open .p18-card{scale:1.03;transform-origin:center}
    .p18-fan.open .p18-card.s0{transform:translateY(-92%) translateX(-5%) rotate(0) scale(.5)}
    .p18-fan.open .p18-card.s1{transform:translateY(-92%) translateX(-83%) rotate(0) scale(.5)}
    .p18-fan.open .p18-card.s2{transform:translateY(-2%) translateX(-5%) rotate(0) scale(.5)}
    .p18-fan.open .p18-card.s3{transform:translateY(-2%) translateX(-83%) rotate(0) scale(.5)}
    .p18-fan.open .p18-card.s0:hover{transform:translateY(-92%) translateX(-5%) scale(.56)}
    .p18-fan.open .p18-card.s1:hover{transform:translateY(-92%) translateX(-83%) scale(.56)}
    .p18-fan.open .p18-card.s2:hover{transform:translateY(-2%) translateX(-5%) scale(.56)}
    .p18-fan.open .p18-card.s3:hover{transform:translateY(-2%) translateX(-83%) scale(.56)}
  }
  @media (max-width:900px){
    /* 0731 竖屏压缩：扇形卡与心电区收矮，一屏放下 */
    .p18-slide .inner{overflow-y:auto}
    .p18-body{flex-direction:column;gap:16px}
    .p18-fan{flex:none;width:100%;height:290px}
    .p18-find img{height:19vh}
  }
  
