/* CP site styles (moved from Customizer "Additional CSS" so they ship with the plugin) */
:root{--cp-red:#e6141d;--cp-red-hi:#ff3a40;--cp-bone:#f3ece6;--cp-ink:#0b0909;--cp-line:#2a1416}

/* Page titles hidden on the homepage; hero handles the H1 */
.home .entry-hero,.home .page-header,.home .entry-content-wrap>.entry-header{display:none}
.home .content-area{margin-top:1rem}
.home .content-container.site-container{padding-top:0}

/* Hero */
.cp-hero{text-align:center;max-width:980px;margin:.4rem auto 1.1rem;padding:0 1rem}
.cp-h1{font-size:clamp(1.8rem,4.2vw,3rem);line-height:1.12;margin:0 0 .6rem;color:var(--cp-bone);letter-spacing:-.01em}
.cp-h1-red{color:var(--cp-red)}
.cp-lede{font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.6;color:#cfc6c0;max-width:760px;margin:0 auto 1rem}
.cp-lede a{color:var(--cp-red);text-decoration:none;font-weight:600}
.cp-lede a:hover{color:var(--cp-red-hi);text-decoration:underline}
.cp-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0}
.cp-btn{display:inline-block;padding:.7rem 1.3rem;border-radius:999px;background:var(--cp-red);color:#fff!important;font-weight:700;text-decoration:none!important;border:2px solid var(--cp-red);transition:background .2s,border-color .2s,transform .2s}
.cp-btn:hover{background:var(--cp-red-hi);border-color:var(--cp-red-hi);transform:translateY(-1px)}
.cp-btn-ghost{background:transparent;color:var(--cp-bone)!important;border-color:#4a2024}
.cp-btn-ghost:hover{background:rgba(230,20,29,.12);border-color:var(--cp-red)}

/* Press strip */
.cp-featured{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1.1rem;margin:0 auto 1.8rem;padding:.75rem 1rem;border-top:1px solid var(--cp-line);border-bottom:1px solid var(--cp-line);text-align:center}
.cp-featured-loc{color:var(--cp-red)!important;font-weight:700;text-decoration:none!important;border:1px solid var(--cp-red);border-radius:999px;padding:.25rem .8rem;font-size:.85rem}
.cp-featured-loc:hover{background:rgba(230,20,29,.12)}
.cp-featured-k{color:#8f8580;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
.cp-featured-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;list-style:none;margin:0;padding:0}
.cp-featured-list li{margin:0}
.cp-featured-list a{color:var(--cp-red)!important;text-decoration:none!important;font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:1.05rem;opacity:.9;transition:opacity .2s,color .2s}
.cp-featured-list a:hover{opacity:1;color:var(--cp-red-hi)!important}

/* Headings in red throughout */
.entry-content h2.wp-block-heading,.entry-content h3.wp-block-heading,.widget-title,.wp-block-heading.widget-title{color:var(--cp-red)}
.home .entry-content > h2.wp-block-heading{font-variant:small-caps;letter-spacing:.02em;margin:2.4rem 0 1rem;padding-top:1.4rem;border-top:1px solid #1f1a1a}
.single-post .entry-header .entry-title,.single-post h1.entry-title{color:var(--cp-red)}
.entry-content a{color:var(--cp-red)}
.entry-content a:hover{color:var(--cp-red-hi)}

/* Story cards */
.cpr-card-title a{color:var(--cp-red)!important}
.cpr-card-title a:hover{color:var(--cp-red-hi)!important}
.cpr-card-meta a,.cpr-card-noimg-cat{color:var(--cp-red)}
.cpr-card-thumb{background:#000}
.cpr-card-thumb img{object-fit:contain!important}
.cpr-sotd-title,.cpr-sotd-title a{color:var(--cp-red)}

/* Home FAQ (Rank Math block) */
.wp-block-rank-math-faq-block{display:grid;gap:.7rem;margin-bottom:2rem}
.rank-math-faq-item{background:#110d0d;border:1px solid var(--cp-line);border-left:3px solid var(--cp-red);border-radius:8px;padding:1rem 1.2rem}
.rank-math-question{color:var(--cp-red)!important;font-size:1.1rem!important;margin:0 0 .45rem!important}
.rank-math-answer{color:#d6cdc8;line-height:1.65}
.rank-math-answer p:last-child{margin-bottom:0}

/* YouTube line */
.cp-yt{text-align:center;margin:1.6rem 0 2rem}
.cp-yt a{display:inline-block;padding:.75rem 1.3rem;border:1px solid var(--cp-red);border-radius:999px;color:var(--cp-bone)!important;text-decoration:none!important;font-weight:700}
.cp-yt a:hover{background:rgba(230,20,29,.14)}

/* Footer */
.site-footer .site-middle-footer-wrap{position:relative;border-top:3px solid var(--cp-red);background:#070505}
.site-footer .site-middle-footer-wrap:before{content:"";position:absolute;left:0;right:0;top:0;height:22px;pointer-events:none;background:radial-gradient(7px 14px at 4% 0,var(--cp-red) 98%,transparent) ,radial-gradient(5px 20px at 17% 0,var(--cp-red) 98%,transparent),radial-gradient(6px 11px at 33% 0,var(--cp-red) 98%,transparent),radial-gradient(5px 18px at 52% 0,var(--cp-red) 98%,transparent),radial-gradient(8px 13px at 68% 0,var(--cp-red) 98%,transparent),radial-gradient(5px 21px at 83% 0,var(--cp-red) 98%,transparent),radial-gradient(6px 12px at 96% 0,var(--cp-red) 98%,transparent)}
.site-footer .widget-title{color:var(--cp-red);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--cp-red);padding-bottom:.45rem;margin-bottom:.8rem}
.site-footer a{color:#e8e0da;text-decoration:none}
.site-footer a:hover{color:var(--cp-red-hi)}
.site-footer .cpr-toplist{list-style:none;counter-reset:cpft;padding:0}
.site-footer .cpr-toplist li{counter-increment:cpft;position:relative;padding:.35rem 0 .35rem 2rem;border-bottom:1px solid #1d1515;margin:0}
.site-footer .cpr-toplist li:before{content:counter(cpft);position:absolute;left:0;top:.35rem;color:var(--cp-red);font-weight:800;width:1.5rem;text-align:right}
.site-footer .cpr-toplist-meta{color:#8f8580}
.site-footer .blogroll,.site-footer .cp-footer-links{list-style:none;margin:0;padding:0;columns:2;column-gap:1.2rem}
.site-footer .blogroll li,.site-footer .cp-footer-links li{break-inside:avoid;padding:.3rem 0;margin:0;border-bottom:1px solid #1d1515}
.site-footer .cp-footer-links li.cp-all-tools{column-span:all;border:0;padding-top:.6rem}
.site-footer .cp-footer-links li.cp-all-tools a{color:var(--cp-red);font-weight:700}
.site-footer .site-bottom-footer-wrap{background:#050404;border-top:1px solid #1d1515;color:#8f8580}

/* Story pages: no sidebar on tablet / mobile */
@media(max-width:1024px){.single-post #secondary,.single-post .primary-sidebar{display:none!important}.single-post .content-container.site-container{grid-template-columns:1fr!important}}

/* Tools: single-result generators use the full width */
.cpt-results:has(> .cpt-card:only-child){grid-template-columns:1fr}

@media(max-width:600px){.cp-featured{gap:.4rem .8rem}.cp-featured-list a{font-size:.95rem}.cp-btn{padding:.6rem 1rem}}

/* Story of the Day: compact */
.cpr-sotd{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)!important;align-items:stretch;max-width:1100px;margin:0 auto}
.cpr-sotd-img{aspect-ratio:auto!important;width:100%;min-height:300px!important;background:#000}
.cpr-sotd-img img{object-fit:contain!important;background:#000}
.cpr-sotd-body{padding:1.2rem 1.4rem!important;gap:.45rem!important}
.cpr-sotd-title{font-size:clamp(1.2rem,1.9vw,1.55rem)!important;font-variant:normal!important;border:0!important;padding:0!important;margin:0!important}
.cpr-sotd-title a{color:var(--cp-red)!important}
.cpr-sotd-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.95rem}
.cpr-sotd-btn{background:var(--cp-red)!important;border-radius:999px!important}
@media(max-width:760px){.cpr-sotd{grid-template-columns:1fr!important}.cpr-sotd-img{aspect-ratio:16/9!important;min-height:0!important}}

/* No underlines on story components */
.cpr-rankings a,.cpr-card a,.cpr-sotd a,.cpr-tile,.cpr-toplist a,.cp-side-list a{text-decoration:none!important}
.cpr-card-meta a{color:var(--cp-red)!important}

/* Cards without a featured image: no duplicate title, show a mark instead */
.cpr-card .cpr-card-thumb .cpr-card-noimg-title{display:none}
.cpr-card .cpr-card-thumb .cpr-card-noimg{justify-content:center;align-items:center;text-align:center}
.cpr-card .cpr-card-thumb .cpr-card-noimg:before{content:"CREEPYPASTA";font-family:Creepster,Impact,sans-serif;font-size:1.6rem;letter-spacing:.06em;color:rgba(230,20,29,.55);text-shadow:0 0 18px rgba(230,20,29,.35)}
.cpr-card .cpr-card-thumb .cpr-card-noimg-cat{position:absolute;left:1rem;bottom:.8rem}

/* Category / collection tiles: blurred, darkened backgrounds so titles stay readable */
.cpr-tile-img{filter:blur(2px) grayscale(.35) brightness(.45) contrast(1.1)!important}
.cpr-tile:hover .cpr-tile-img{filter:blur(1px) grayscale(.1) brightness(.6) contrast(1.1)!important}

/* Hero title on one line */
.cp-hero{max-width:1240px}
.cp-h1{font-size:clamp(1.35rem,3vw,2.55rem);white-space:nowrap}
@media(max-width:760px){.cp-h1{white-space:normal;font-size:1.7rem}}

/* Page headers (all pages except the homepage) */
.page-hero-section{position:relative;background:radial-gradient(70% 140% at 50% 0%,rgba(230,20,29,.28),rgba(60,4,8,.35) 45%,#070404 80%)!important;border-bottom:1px solid #2a0f12}
.page-hero-section .entry-hero-container-inner{background:transparent!important;min-height:0!important}
.page-hero-section .hero-section-overlay{display:none}
.page-hero-section .hero-container{padding:2.4rem 1rem 2.2rem!important;min-height:0!important}
.page-hero-section .entry-header{text-align:center;margin:0 auto}
.page-hero-section .entry-title{color:var(--cp-red)!important;text-align:center;font-size:clamp(1.9rem,4.4vw,3.2rem)!important;letter-spacing:.02em;text-shadow:0 0 24px rgba(230,20,29,.35),0 2px 0 #000;margin:0!important}
.page-hero-section .entry-header:after{content:"";display:block;width:84px;height:3px;margin:.9rem auto 0;background:var(--cp-red);border-radius:2px;box-shadow:0 0 12px rgba(230,20,29,.7)}
.page-hero-section:after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:22px;pointer-events:none;transform:translateY(100%);background:radial-gradient(5px 14px at 6% 0,var(--cp-red) 98%,transparent),radial-gradient(4px 20px at 21% 0,var(--cp-red) 98%,transparent),radial-gradient(5px 11px at 38% 0,var(--cp-red) 98%,transparent),radial-gradient(4px 18px at 57% 0,var(--cp-red) 98%,transparent),radial-gradient(6px 13px at 74% 0,var(--cp-red) 98%,transparent),radial-gradient(4px 21px at 91% 0,var(--cp-red) 98%,transparent)}
.page:not(.home) .entry-content>p:first-child{text-align:center;max-width:820px;margin:0 auto 1.8rem;font-size:1.12rem;color:#cfc6c0;line-height:1.65}

/* Ranking filters + cards */
.cpr-filters{background:#0e0a0a!important;border:1px solid var(--cp-line)!important;border-radius:12px!important}
.cpr-filters label{color:var(--cp-red)!important;font-size:.72rem!important;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.cpr-filters select{background:#160f0f!important;border:1px solid #3a1518!important;color:var(--cp-bone)!important;border-radius:8px!important}
.cpr-filters select:focus{border-color:var(--cp-red)!important;box-shadow:0 0 0 3px rgba(230,20,29,.2)!important}
.cpr-filters button,.cpr-filters [type=submit]{background:var(--cp-red)!important;border-radius:999px!important;border:0!important;color:#fff!important;font-weight:700}
.cpr-filters button:hover,.cpr-filters [type=submit]:hover{background:var(--cp-red-hi)!important}
.cpr-card-rating{white-space:nowrap;font-size:.92rem}
.cpr-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.cpr-card:hover{transform:translateY(-3px);border-color:rgba(230,20,29,.55)!important;box-shadow:0 10px 30px rgba(0,0,0,.6),0 0 0 1px rgba(230,20,29,.25)}
.cpr-card-body{flex:1 1 auto!important;display:flex!important;flex-direction:column}
.cpr-card-title{margin-bottom:.45rem!important}
.cpr-card-excerpt{margin:.5rem 0 .2rem!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.cpr-card-more{margin-top:auto!important;padding-top:.7rem}

/* Homepage: tight section spacing */
.home .entry-content > h2.wp-block-heading{margin:1.3rem 0 .5rem!important;padding-top:.9rem!important}
.home .entry-content > p{margin:0 0 .8rem!important}
.home .entry-content > *{margin-block-start:0}
.home .cpr-rankings,.home .cpr-grid,.home .cpr-tiles,.home .cp-latest,.home .cpr-sotd{margin-bottom:.4rem!important}
.home .cpr-pagination{margin:.6rem 0 0!important}
.home .cp-featured{margin-bottom:1.2rem}

/* Wider menu dropdowns so long names don't wrap */
.main-navigation .sub-menu{min-width:290px}
.main-navigation .sub-menu a{white-space:nowrap}

/* Menu hover: red */
.main-navigation .primary-menu-container>ul>li.menu-item>a:hover,.main-navigation .primary-menu-container>ul>li.menu-item:hover>a,.main-navigation .primary-menu-container>ul>li.current-menu-item>a{color:#e6141d!important}
.main-navigation .sub-menu{background:#0b0606!important;border:1px solid #2a0f12;border-top:2px solid #e6141d;box-shadow:0 12px 30px rgba(0,0,0,.7)}
.main-navigation .sub-menu li.menu-item>a{color:#efe7e2!important;background:transparent!important;padding:.65em 1.1em!important;border-bottom:1px solid #1d1212}
.main-navigation .sub-menu li.menu-item>a:hover,.main-navigation .sub-menu li.menu-item:hover>a{color:#e6141d!important;background:rgba(230,20,29,.10)!important}
.mobile-navigation a:hover{color:#e6141d!important}

/* Story pages: tighter header */
.single-post .article-post-thumbnail{margin-bottom:.9rem!important}
.single-post .entry-header{margin-bottom:.35rem!important}
.single-post .entry-taxonomies{margin-bottom:.2rem!important}
.single-post .entry-header .entry-meta{margin:.35rem 0 0!important}
.single-post .entry-content{margin-top:.6rem!important}
.single-post .cpct-storybar{margin-bottom:.45rem!important}
.single-post .entry-content .cpr-widget{margin:.3rem 0 1rem!important}

/* Site-wide: compact page headers and content spacing */
.page-hero-section .entry-header{min-height:0!important}
.page-hero-section .hero-container{padding:1.3rem 1rem 1.2rem!important}
.page-hero-section .entry-title{font-size:clamp(1.7rem,3.6vw,2.6rem)!important}
.page-hero-section .entry-header:after{margin-top:.55rem;width:70px}
.content-area{margin-top:1.4rem!important;margin-bottom:1.6rem!important}
.entry-content-wrap{padding-top:.4rem!important;padding-bottom:1rem!important}
.single-post .entry-content-wrap{padding-top:1rem!important}
.page:not(.home) .entry-content>p:first-child{margin-bottom:1rem!important}
.cpr-filters{margin-bottom:1rem!important}

/* Footer lists: compact, grouped toolkit */
.site-footer .cp-footer-links{columns:auto!important;display:grid;grid-template-columns:1fr 1fr;column-gap:1.2rem}
.site-footer .cp-footer-links li,.site-footer .blogroll li,.site-footer .cpr-toplist li{padding:.22rem 0!important;font-size:.92rem;line-height:1.35}
.site-footer .cp-footer-links li.cp-fl-head{grid-column:1/-1;border:0;padding:.7rem 0 .15rem!important;color:#e6141d;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.site-footer .cp-footer-links li.cp-fl-head:first-child{padding-top:0!important}
.site-footer .cp-footer-links li.cp-all-tools{grid-column:1/-1}
.site-footer .widget-title{margin-bottom:.5rem!important}
.site-footer .site-middle-footer-inner-wrap{padding-top:1.6rem!important;padding-bottom:1.2rem!important}
.site-footer .cpr-toplist li{padding:.3rem 0 .3rem 2rem!important}
.site-footer .cpr-toplist li:before{top:.3rem}

/* Related legends line */
.cp-legends{margin:0 0 .8rem;padding:.55rem .85rem;border:1px solid #2a1416;border-left:3px solid #e6141d;border-radius:8px;background:#0f0b0b;font-size:.92rem;line-height:1.6}
.cp-legends-k{color:#e6141d;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;margin-right:.2rem}
.cp-legends a{color:#f3ece6!important;text-decoration:none!important;font-weight:600}
.cp-legends a:hover{color:#ff3a40!important}
.cp-legends-sep{color:#6b2a2e}
