/* ip120.cn 广告位样式（前台与后台预览共用） */
.ad-slot{margin:0 0 20px}
.ad-slot>*+*{margin-top:12px}
.ad-slot a{text-decoration:none;color:inherit}
/* 每种风格自身作为定位上下文，否则「广告」角标会挂到 sticky 导航上 */
.ad-banner,.ad-card,.ad-text,.ad-image,.ad-code{position:relative}
.ad-tag{position:absolute;right:10px;top:9px;font-size:10px;line-height:1;padding:3px 6px;border-radius:5px;background:rgba(127,127,127,.16);color:currentColor;opacity:.62;letter-spacing:.5px;pointer-events:none}

/* ===== 横幅 ===== */
.ad-banner{display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:12px;overflow:hidden}
.ad-banner .ad-ic{font-size:30px;line-height:1;flex:none}
.ad-banner .ad-tx{flex:1;min-width:0}
.ad-banner .ad-t{font-size:16px;font-weight:600;line-height:1.35}
.ad-banner .ad-b{font-size:13px;opacity:.85;margin-top:3px;line-height:1.5}
.ad-banner .ad-cta{flex:none;padding:8px 18px;border-radius:8px;font-size:13.5px;font-weight:500;white-space:nowrap;background:rgba(255,255,255,.92);color:#1a1d2b}
.ad-banner:hover .ad-cta{background:#fff}
.ad-banner.t-blue{background:linear-gradient(135deg,#3aa7f0,#2563eb);color:#fff}
.ad-banner.t-green{background:linear-gradient(135deg,#17b978,#0e9b63);color:#fff}
.ad-banner.t-purple{background:linear-gradient(135deg,#a855f7,#7c3aed);color:#fff}
.ad-banner.t-orange{background:linear-gradient(135deg,#fbaf3c,#f2761b);color:#fff}
.ad-banner.t-dark{background:linear-gradient(135deg,#3b2a68,#241a44);color:#fff}
.ad-banner.t-light{background:var(--bg-main,#fff);color:var(--text,#111);box-shadow:var(--shadow,0 10px 10px rgba(0,0,0,.08))}
.ad-banner.t-light .ad-cta{background:#2563eb;color:#fff}
@media (max-width:640px){
  .ad-banner{flex-wrap:wrap;padding:15px 16px;gap:12px}
  .ad-banner .ad-cta{width:100%;text-align:center}
}

/* ===== 卡片 ===== */
.ad-card{display:flex;gap:15px;align-items:center;padding:16px 18px;border-radius:12px;background:var(--bg-main,#fff);box-shadow:var(--shadow,0 10px 10px rgba(0,0,0,.08));border-left:4px solid var(--ad-ac,#2563eb)}
.ad-card .ad-img{width:78px;height:78px;flex:none;border-radius:9px;object-fit:cover;background:var(--bg-secondary,#f3f3f3)}
.ad-card .ad-ic{font-size:30px;flex:none}
.ad-card .ad-tx{flex:1;min-width:0}
.ad-card .ad-t{font-size:15.5px;font-weight:600;color:var(--text,#111);line-height:1.35}
.ad-card .ad-b{font-size:13px;color:var(--text-secondary,#727272);margin-top:4px;line-height:1.6}
.ad-card .ad-cta{flex:none;font-size:13.5px;font-weight:500;color:var(--ad-ac,#2563eb);white-space:nowrap}
.ad-card .ad-cta::after{content:" →"}
.ad-card.t-blue{--ad-ac:#2563eb}.ad-card.t-green{--ad-ac:#0e9b63}.ad-card.t-purple{--ad-ac:#7c3aed}
.ad-card.t-orange{--ad-ac:#f2761b}.ad-card.t-dark{--ad-ac:#3b2a68}.ad-card.t-light{--ad-ac:#727272}
@media (max-width:640px){.ad-card{flex-wrap:wrap}.ad-card .ad-cta{width:100%}}

/* ===== 文字链 ===== */
.ad-text{display:flex;align-items:center;gap:9px;padding:10px 14px;border-radius:9px;background:var(--bg-secondary,#f3f3f3);font-size:13px;color:var(--description,#333);line-height:1.6}
.ad-text .ad-ic{flex:none}
.ad-text .ad-t{font-weight:500}
.ad-text .ad-b{color:var(--text-secondary,#727272)}
.ad-text .ad-cta{margin-left:auto;flex:none;color:var(--ad-ac,#2563eb);white-space:nowrap}
.ad-text.t-blue{--ad-ac:#2563eb}.ad-text.t-green{--ad-ac:#0e9b63}.ad-text.t-purple{--ad-ac:#7c3aed}
.ad-text.t-orange{--ad-ac:#f2761b}.ad-text.t-dark{--ad-ac:#3b2a68}.ad-text.t-light{--ad-ac:#727272}
@media (max-width:640px){.ad-text{flex-wrap:wrap}.ad-text .ad-cta{margin-left:0;width:100%}}

/* ===== 纯图片 ===== */
.ad-image{display:block;border-radius:12px;overflow:hidden;line-height:0}
.ad-image img{width:100%;height:auto;display:block}

/* ===== 自定义代码 ===== */
.ad-code{min-height:0;overflow:hidden}
.ad-code :is(img,iframe){max-width:100%}
