/* Single blog post (v1.5.4) */
.sgp{background:var(--bg,#f0f4ff)}
.sgp-top{padding:18px 0 0}
.sgp-top .breadcrumb{background:none;border:0;padding:0;margin:0;flex-wrap:wrap;font-size:13px}
.sgp-top .breadcrumb a{text-decoration:none}
.sgp-top .breadcrumb span:last-child{opacity:1;margin:0;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(60ch,100%)}
.sgp-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start;padding-top:18px;padding-bottom:48px}

/* article */
.sgp-article{background:#fff;border:1px solid var(--border);border-radius:18px;padding:clamp(22px,4vw,44px);box-shadow:var(--sh)}
.sgp-cat{display:inline-block;padding:4px 12px;border-radius:99px;background:var(--blue-soft);color:var(--blue);font-size:12.5px;font-weight:700;letter-spacing:.02em;text-decoration:none}
a.sgp-cat:hover{background:var(--blue-mid)}
.sgp-title{margin:14px 0 0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(26px,3.4vw,38px);line-height:1.2;color:var(--ink);letter-spacing:-.01em;overflow-wrap:anywhere}
.sgp-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;color:var(--ink3);font-size:14px}
.sgp-meta-av{width:34px;height:34px;border-radius:50%;display:block;background:var(--blue-soft);object-fit:cover}
.sgp-meta-name{color:var(--ink);font-weight:600}

.sgp-strip{display:flex;align-items:center;gap:14px;margin:24px 0 8px;padding:14px 16px;border-radius:14px;background:linear-gradient(90deg,var(--blue-soft),#f7f9ff);border:1px solid var(--blue-border)}
.sgp-strip-ic{flex:none;width:40px;height:40px;border-radius:11px;background:#fff;color:var(--blue);display:grid;place-items:center;box-shadow:var(--sh)}
.sgp-strip p{flex:1;margin:0;color:var(--ink2);font-size:14.5px;line-height:1.45}
.sgp-strip strong{color:var(--ink)}

.sgp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:10px;background:var(--blue);color:#fff!important;font-weight:700;font-size:14.5px;text-decoration:none!important;white-space:nowrap;box-shadow:var(--shblue);transition:background .15s,transform .05s}
.sgp-btn:hover{background:var(--blue-d)}
.sgp-btn:active{transform:translateY(1px)}
.sgp-btn-block{display:flex;width:100%;margin-top:18px;padding:13px}

.sgp-hero-img{width:100%;height:auto;border-radius:14px;margin:18px 0 6px}
.sgp-content{max-width:none;margin-top:22px}
.sgp-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0}
.sgp-tags a{padding:5px 12px;border-radius:99px;border:1px solid var(--border);color:var(--ink2);font-size:13px;text-decoration:none}
.sgp-tags a:hover{border-color:var(--blue);color:var(--blue)}

/* big CTA */
.sgp-cta{margin-top:34px;padding:clamp(22px,3.4vw,34px);border-radius:18px;background:linear-gradient(135deg,#1245b5 0%,#1958d4 55%,#2f74f0 100%);color:#fff;position:relative;overflow:hidden}
.sgp-cta::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08)}
.sgp-kicker{margin:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#bcd2ff}
.sgp-cta h2{margin:8px 0 0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(21px,2.6vw,27px);line-height:1.25;color:#fff;position:relative}
.sgp-checks{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.sgp-cta .sgp-checks{grid-template-columns:1fr 1fr;gap:10px 22px;position:relative}
.sgp-checks li{display:flex;align-items:flex-start;gap:9px;font-size:14.5px;line-height:1.45}
.sgp-checks svg{flex:none;margin-top:2px;padding:2px;width:20px;height:20px;border-radius:50%}
.sgp-cta .sgp-checks svg{background:rgba(255,255,255,.18);color:#fff}
.sgp-cta-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;position:relative}
.sgp-btn-light{background:#fff;color:var(--blue)!important;box-shadow:0 8px 20px -10px rgba(0,0,0,.4)}
.sgp-btn-light:hover{background:#eef3ff}
.sgp-btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.6);box-shadow:none}
.sgp-btn-ghost:hover{background:rgba(255,255,255,.12)}
.sgp-cta-note{margin:12px 0 0;font-size:12.5px;color:#cfdcff;position:relative}

/* share */
.sgp-share{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:28px;padding-top:22px;border-top:1px solid var(--border)}
.sgp-share>span{font-weight:700;color:var(--ink);font-size:14px;margin-right:4px}
.sgp-sh{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:9px;border:1px solid var(--border);background:#fff;color:var(--ink2);font:inherit;font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .15s}
.sgp-sh:hover{color:#fff;border-color:transparent}
.sgp-sh.is-x:hover{background:#111}
.sgp-sh.is-fb:hover{background:#1877f2}
.sgp-sh.is-in:hover{background:#0a66c2}
.sgp-sh.is-wa:hover{background:#25d366}
.sgp-sh.is-copy:hover{background:var(--blue)}
.sgp-sh.is-copied{background:var(--green);color:#fff;border-color:transparent}

/* author */
.sgp-author{display:flex;align-items:center;gap:16px;margin-top:22px;padding:18px;border-radius:14px;background:var(--blue-xsoft,#f5f7ff);border:1px solid var(--border)}
.sgp-author-av{width:56px;height:56px;border-radius:50%;flex:none}
.sgp-author strong{display:block;color:var(--ink);font-size:16px}
.sgp-author span{display:block;color:var(--ink3);font-size:13.5px;margin-top:2px}
.sgp-author p{margin:8px 0 0;color:var(--ink2);font-size:14px;line-height:1.6}

/* prev / next */
.sgp-pn{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.sgp-pn-item{display:block;padding:16px 18px;border-radius:14px;border:1px solid var(--border);background:#fff;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.sgp-pn-item:hover{border-color:var(--blue);box-shadow:var(--sh)}
.sgp-pn-item span{display:block;color:var(--blue);font-size:12.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}
.sgp-pn-item strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:6px;color:var(--ink);font-size:14.5px;line-height:1.4}
.sgp-pn-item.is-next{text-align:right}

/* sidebar */
.sgp-side{display:grid;gap:18px}
.sgp-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--sh)}
.sgp-card h3,.sgp-widgets .sm-widget-title{margin:0 0 12px;font-size:16.5px;font-weight:800;color:var(--ink)}
.sgp-card-cta{border-color:var(--blue-border);background:linear-gradient(180deg,#fff 0,var(--blue-xsoft,#f5f7ff) 100%)}
.sgp-card-cta>p{margin:0;color:var(--ink2);font-size:14px;line-height:1.55}
.sgp-card-cta .sgp-checks{margin-top:14px;gap:9px}
.sgp-card-cta .sgp-checks li{font-size:14px;color:var(--ink2)}
.sgp-card-cta .sgp-checks svg{background:var(--green-l);color:var(--green)}
.sgp-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sgp-stats>div{padding:12px;border-radius:12px;background:var(--blue-xsoft,#f5f7ff);border:1px solid var(--border)}
.sgp-stats strong{display:block;font-size:20px;font-weight:800;color:var(--blue);letter-spacing:-.01em}
.sgp-stats span{display:block;margin-top:2px;color:var(--ink3);font-size:12.5px;line-height:1.3}
.sgp-search{display:flex;border:1.5px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
.sgp-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(25,88,212,.12)}
.sgp-search input{flex:1;min-width:0;border:0;outline:0;padding:11px 12px;font:inherit;font-size:14px;background:transparent;color:var(--ink)}
.sgp-search button{border:0;background:var(--blue);color:#fff;width:44px;display:grid;place-items:center;cursor:pointer}
.sgp-list{list-style:none;margin:0;padding:0}
.sgp-list li{padding:10px 0;border-top:1px solid var(--border)}
.sgp-list li:first-child{border-top:0;padding-top:0}
.sgp-list a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink);font-size:14px;font-weight:600;line-height:1.4;text-decoration:none}
.sgp-list a:hover{color:var(--blue)}
.sgp-list time{display:block;margin-top:3px;color:var(--ink3);font-size:12px}
.sgp-chips{display:flex;flex-wrap:wrap;gap:8px}
.sgp-chips a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;background:var(--blue-xsoft,#f5f7ff);border:1px solid var(--border);color:var(--ink2);font-size:13px;font-weight:600;text-decoration:none}
.sgp-chips a:hover{border-color:var(--blue);color:var(--blue)}
.sgp-chips span{color:var(--ink3);font-weight:500}
.sgp-select{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:10px;font:inherit;font-size:14px;color:var(--ink);background:#fff}
.sgp-widgets{display:grid;gap:18px}
.sgp-widgets .sm-widget{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--sh)}
.sgp-widgets ul{list-style:none;margin:0;padding:0}
.sgp-widgets li{padding:8px 0;border-top:1px solid var(--border);font-size:14px}
.sgp-widgets li:first-child{border-top:0}
.sgp-widgets a{color:var(--ink);text-decoration:none}
.sgp-widgets a:hover{color:var(--blue)}

/* related */
.sgp-related{padding:8px 0 64px}
.sgp-related h2{margin:0 0 20px;font-family:'Playfair Display',Georgia,serif;font-size:clamp(22px,2.6vw,28px);color:var(--ink)}
.sgp-rel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sgp-rel-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--sh);transition:transform .15s,box-shadow .15s}
.sgp-rel-card:hover{transform:translateY(-3px);box-shadow:var(--shl)}
.sgp-rel-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.sgp-rel-body{display:flex;flex-direction:column;flex:1;padding:18px}
.sgp-rel-body .sgp-cat{align-self:flex-start}
.sgp-rel-body h3{margin:10px 0 0;font-size:16px;line-height:1.4}
.sgp-rel-body h3 a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink);text-decoration:none}
.sgp-rel-body h3 a:hover{color:var(--blue)}
.sgp-rel-body p{flex:1;margin:8px 0 0;color:var(--ink2);font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sgp-rel-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:13px;color:var(--ink3)}
.sgp-rel-foot a{color:var(--blue);font-weight:700;text-decoration:none}

@media (max-width:1024px){
  .sgp-layout{grid-template-columns:1fr}
  .sgp-side{position:static;grid-template-columns:1fr 1fr}
  .sgp-rel-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .sgp-strip{flex-wrap:wrap}
  .sgp-strip .sgp-btn{width:100%}
  .sgp-cta .sgp-checks{grid-template-columns:1fr}
  .sgp-cta-btns .sgp-btn{flex:1 1 100%}
  .sgp-side{grid-template-columns:1fr}
  .sgp-pn{grid-template-columns:1fr}
  .sgp-pn-item.is-next{text-align:left}
  .sgp-rel-grid{grid-template-columns:1fr}
  .sgp-sh span{display:none}
}
