/* =========================================================
   首页 · 公园相亲角导流入口（仅作用于 .pk-entry 容器，不影响全局）
   视觉对齐 m/park.php 的挂绳纸牌，但自包含、不依赖 park.css
   ========================================================= */
/* 【2026-10-15 亮哥】卡片尺寸与相亲角页 res/m/css/park.css 完全对齐（同一套 --pk-s 等比系数，
   卡片宽 104→108px）：入口改 2 行 × 3 张共 6 张，一行 3 张的排布与相亲角页一致。 */
.pk-entry{position:relative;--pk-s:1.0385;margin:8px 10px 0;border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,#FFF3DF 0%,#FFE9CF 30%,#EAF6DC 64%,#D6ECB6 100%);
  box-shadow:0 4px 16px rgba(120,90,50,.12);padding-bottom:12px}
/*【2026-10-12 亮哥】标题行字号统一放大：相亲角 20px / 已展示 15px(见 index4.php 的 .topcnt) /
   去逛逛 16px / 进入 16px。四个元素必须同一行 ⇒ 收紧 gap 与左右 padding 给字号腾位；
   flex-wrap + row-gap 兜底：更窄的屏(≤375)会自动把「进入」换到第二行，不挤压不乱裁。 */
.pk-entry-hd{display:flex;align-items:center;flex-wrap:wrap;row-gap:2px;gap:4px;padding:11px 10px 4px}
.pk-entry-hd .tt{font-size:20px;font-weight:800;color:#6A4A2C;display:flex;align-items:center;gap:2px}
.pk-entry-hd .tt .bk{font-size:16px}
.pk-entry-hd .sub{font-size:16px;color:#9A7F62;margin-left:2px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pk-entry-hd .go{font-size:16px;font-weight:800;color:#fff;background:linear-gradient(135deg,#FF7E9C,#FF4D77);
  padding:5px 9px;border-radius:999px;box-shadow:0 3px 9px rgba(255,77,119,.34);text-decoration:none;flex:none;margin-left:auto}
.pk-entry-hd .go:active{transform:scale(.95)}

/* 【2026-10-15 亮哥】一行 3 张：3×108.004 + 2×15 = 354.01px；.pk-entry 左右各 10px 外边距 ⇒
   375px 屏可用 355px，刚好容下不横向滚动（更窄的屏由 overflow-x:auto 兜底）。
   左右内边距收到 0 + .pk-line 居中，与相亲角页 m/park.php 的排布保持一致。 */
/* 【2026-10-15 亮哥·底部被切】与相亲角页 .pk-rail 同口径：卡片被 --dy 下移 + sway 旋转 + 投影向下延伸，
   overflow-y:hidden 会把卡片底部投影硬切 ⇒ 下间距 6→16px（小程序同系数 12→32rpx）。 */
.pk-entry-rail{position:relative;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;
  padding:18px 0 16px}
.pk-entry-rail::-webkit-scrollbar{display:none}
.pk-entry .pk-rope{position:absolute;left:0;top:12px;pointer-events:none;overflow:visible;z-index:2}
.pk-entry .pk-line{display:flex;align-items:flex-start;gap:15px;position:relative;padding-top:6px;
  width:max-content;max-width:100%;margin:0 auto}

/* 挂绳纸牌（尺寸 1:1 对齐公园相亲角 res/m/css/park.css，仅作用域限定） */
.pk-entry .pk-hang{--pk-s:1.0385;flex:none;width:calc(104px * var(--pk-s));transform:translateY(var(--dy,0px));will-change:transform;text-decoration:none}
.pk-entry .pk-clip{position:relative;z-index:3;width:calc(16px * var(--pk-s));height:calc(20px * var(--pk-s));margin:0 auto calc(-6px * var(--pk-s));border-radius:calc(3px * var(--pk-s));
  background:linear-gradient(180deg,#D7A15F,#A9743C);box-shadow:0 2px 4px rgba(90,60,25,.35),inset 0 1px 0 rgba(255,255,255,.4)}
.pk-entry .pk-clip:after{content:"";position:absolute;left:calc(3px * var(--pk-s));right:calc(3px * var(--pk-s));top:calc(8px * var(--pk-s));height:calc(2px * var(--pk-s));background:rgba(255,255,255,.42);border-radius:calc(2px * var(--pk-s))}
.pk-entry .pk-card{position:relative;transform-origin:50% calc(-6px * var(--pk-s));animation:sway var(--dur,4.2s) ease-in-out infinite;
  animation-delay:var(--dly,0s);will-change:transform}
@keyframes sway{0%,100%{transform:rotate(calc(var(--amp,1.4deg) * -1))}50%{transform:rotate(var(--amp,1.4deg))}}
.pk-entry .pk-paper{position:relative;padding:calc(7px * var(--pk-s)) calc(7px * var(--pk-s)) calc(8px * var(--pk-s));border-radius:calc(9px * var(--pk-s));overflow:hidden;
  background:linear-gradient(160deg,#FFFEF9 0%,#FFF9EC 58%,#FDF2DF 100%);
  box-shadow:0 6px 14px rgba(90,70,40,.26),0 1px 0 rgba(255,255,255,.9) inset;
  border:1px solid rgba(190,160,120,.35)}
.pk-entry .pk-paper:before{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(160,130,90,.05) 0 1px,transparent 1px 5px);opacity:.6}
.pk-entry .pk-pic{position:relative;width:100%;height:calc(104px * var(--pk-s));border-radius:calc(6px * var(--pk-s));overflow:hidden;background:#EFE6D6}
.pk-entry .pk-pic img{width:100%;height:100%;object-fit:cover;display:block}
.pk-entry .pk-sexbar{position:absolute;left:0;right:0;bottom:0;height:calc(3px * var(--pk-s))}
.pk-entry .pk-sexbar.m{background:linear-gradient(90deg,#7FB2FF,#4E8BF5)}
.pk-entry .pk-sexbar.f{background:linear-gradient(90deg,#FF9CB6,#FF668A)}
.pk-entry .pk-corner{position:absolute;left:calc(4px * var(--pk-s));top:calc(4px * var(--pk-s));padding:calc(1px * var(--pk-s)) calc(5px * var(--pk-s));border-radius:calc(6px * var(--pk-s));font-size:calc(9.5px * var(--pk-s));font-weight:700;color:#fff;
  background:rgba(0,0,0,.42)}
.pk-entry .pk-nm{margin-top:calc(5px * var(--pk-s));font-size:calc(12.5px * var(--pk-s));font-weight:800;color:#4A3A28;line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pk-entry .pk-meta{margin-top:calc(2px * var(--pk-s));font-size:calc(10px * var(--pk-s));color:#8B7A62;line-height:1.35;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 免费逛园倒计时进度条 */
.pk-free-bar{margin:4px 14px 0;padding:9px 11px;border-radius:12px;
  background:rgba(255,255,255,.72);box-shadow:0 2px 8px rgba(120,90,50,.10);
  border:1px solid rgba(255,102,138,.28)}
.pk-free-txt{font-size:11.5px;font-weight:700;color:#C2466B;margin-bottom:7px;line-height:1.4}
.pk-free-track{height:8px;border-radius:99px;background:linear-gradient(90deg,#FFE3EC,#FFD2E0);overflow:hidden}
.pk-free-fill{height:100%;width:100%;border-radius:99px;
  background:linear-gradient(90deg,#FF8EB0,#FF668A);transition:width 1s linear}

/* 购票遮罩（到点拦截看详情时弹出） */
.pk-ticket-mask{position:fixed;inset:0;z-index:9990;background:rgba(40,26,18,.55);
  display:none;align-items:center;justify-content:center;padding:24px}
.pk-ticket-mask.on{display:flex}
.pk-ticket{width:100%;max-width:320px;background:#fff;border-radius:18px;overflow:hidden;
  box-shadow:0 18px 50px rgba(80,40,20,.35);animation:pkTicketIn .28s ease}
@keyframes pkTicketIn{from{transform:translateY(18px) scale(.96);opacity:0}to{transform:none;opacity:1}}
.pk-ticket-hd{padding:16px 16px 8px;font-size:16px;font-weight:800;color:#6A4A2C;display:flex;align-items:center;gap:6px}
.pk-ticket-tip{padding:0 16px 10px;font-size:13px;line-height:1.6;color:#7A5A3A}
.pk-ticket-price{margin:0 16px 14px;padding:12px;border-radius:12px;background:linear-gradient(135deg,#FFF1F5,#FFE7EF);
  font-size:14px;font-weight:800;color:#FF4D77;text-align:center}
.pk-ticket-btn{display:block;margin:0 16px 12px;padding:13px;border-radius:99px;text-align:center;text-decoration:none;
  font-size:15px;font-weight:800;color:#fff;background:linear-gradient(135deg,#FF7E9C,#FF4D77);
  box-shadow:0 6px 16px rgba(255,77,119,.4)}
.pk-ticket-btn:active{transform:scale(.97)}
.pk-ticket-close{text-align:center;padding:4px 0 16px;font-size:12.5px;color:#9A7F62}
.pk-ticket-close:active{opacity:.7}
