:root{--purple:#6b2cff;--dark:#151126;--soft:#f6f2ff;--line:#e8ddff}body.ct-gallery{font-family:Arial,Helvetica,sans-serif;margin:0;background:#faf8ff;color:#171321}.ct-wrap{max-width:1180px;margin:0 auto;padding:24px}.ct-nav{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:12px 0 24px}.ct-nav a,.ct-btn{background:var(--purple);color:white;text-decoration:none;border:0;border-radius:999px;padding:10px 16px;font-weight:700;display:inline-block}.ct-nav a.secondary,.ct-btn.secondary{background:white;color:var(--purple);border:1px solid var(--line)}.ct-card{background:white;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 8px 24px rgba(80,40,140,.08);margin-bottom:18px}.ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.ct-thumb{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(80,40,140,.07)}.ct-thumb a{text-decoration:none;color:inherit}.ct-media{aspect-ratio:1/1;background:#eee;display:flex;align-items:center;justify-content:center;overflow:hidden}.ct-media img,.ct-media video{width:100%;height:100%;object-fit:contain;display:block}.ct-media{background:#f3eefc}.ct-photo-thumb{transition:transform .18s ease}.ct-thumb:hover .ct-photo-thumb{transform:scale(1.04)}.ct-photo-zoom{display:block;cursor:zoom-in}.ct-photo-zoom img{width:100%;max-height:82vh;object-fit:contain;border-radius:16px;background:#f3eefc;display:block}.video-thumb{position:relative;width:100%;height:100%}.play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;display:flex;align-items:center;justify-content:center;font-size:25px}.ct-thumb-body{padding:14px}.ct-title{font-weight:800;font-size:18px;margin:0 0 6px}.ct-meta{font-size:13px;color:#5c536d}.ct-search{display:grid;grid-template-columns:2fr 1fr auto;gap:10px}.ct-search input,.ct-search select,.ct-form input,.ct-form textarea,.ct-form select{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:12px;font-size:16px}.ct-form label{display:block;font-weight:800;margin-top:12px}.ct-form textarea{min-height:120px}.no-media{color:#7d738f;padding:24px;text-align:center}.ct-detail-media img{width:100%;max-height:75vh;object-fit:contain;border-radius:16px;background:#eee}@media(max-width:700px){.ct-search{grid-template-columns:1fr}.ct-wrap{padding:16px}}

.ct-error{background:#fff1f2;border:1px solid #fecdd3;color:#7f1d1d;padding:14px 16px;border-radius:14px;margin:14px 0}.ct-error ul{margin:8px 0 0 20px}.ct-note{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;padding:12px 14px;border-radius:12px;margin:10px 0}


.ct-hero,.ct-card:first-of-type{border-top:6px solid var(--purple)}
body.ct-gallery:before{content:"";display:block;height:10px;background:linear-gradient(90deg,#4b008f,var(--purple),#b46cff)}
.ct-wrap h1{color:#3b176f;letter-spacing:-.02em}.ct-wrap h2{color:#4b1d82}.ct-check{background:#f6f2ff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-top:10px}.ct-note a{color:#4b008f;font-weight:800}.ct-btn:hover,.ct-nav a:hover{filter:brightness(.96)}
.ct-nav a.vip, .ct-btn.vip { background: linear-gradient(135deg,#7c3aed,#c026d3); color:#fff; border-color: transparent; }
.ct-vip-card { border: 1px solid rgba(124,58,237,.25); box-shadow: 0 18px 45px rgba(124,58,237,.18); }

.ct-upload-pick{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:8px 0 4px}.ct-upload-pick input[type=file]{position:static;width:auto;max-width:100%;padding:10px;background:#fff;border:1px dashed var(--purple);cursor:pointer}.ct-upload-pick .ct-btn{cursor:pointer}.ct-upload-pick .ct-note{margin:0;color:#5c536d}
.ct-audio-thumb{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#f6f2ff,#ede3ff);color:#4d1fb8;font-weight:800}.ct-audio-note{width:72px;height:72px;border-radius:24px;background:#6b2cff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:42px;box-shadow:0 10px 22px rgba(80,40,140,.18)}.ct-audio-player{display:grid;grid-template-columns:84px 1fr;gap:16px;align-items:center;background:#f6f2ff;border:1px solid var(--line);border-radius:18px;padding:18px}.ct-audio-badge{width:72px;height:72px;border-radius:24px;background:#6b2cff;color:white;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:900}@media(max-width:600px){.ct-audio-player{grid-template-columns:1fr}.ct-audio-badge{margin:auto}}
/* Website Version 3 gallery image display fix - 2026-05-22
   Thumbnails crop from the top so portraits/avatars show faces first.
   Detail pages fit the full image inside the browser window without cropping. */
.ct-media img,
.video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.ct-detail-media {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.ct-detail-media img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    object-position: center center;
    border-radius: 16px;
    background: #eee;
    margin: 0 auto;
}


/* CBT WEB PRE 0001 polish: stronger Search Library, compact actions, copy/export controls, adult content button */
.ct-search{background:linear-gradient(135deg,#ffffff,#f4ecff);border:2px solid rgba(107,44,255,.28);border-radius:18px;padding:14px;box-shadow:0 10px 26px rgba(80,40,140,.10);align-items:end}
.ct-search label{display:block;font-weight:900;color:#3b176f;font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 5px}.ct-search input{border:2px solid rgba(107,44,255,.45);box-shadow:0 0 0 4px rgba(107,44,255,.08);font-weight:700}.ct-search input::placeholder{color:#6f5a96}.ct-action-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.ct-btn.small{padding:8px 12px;font-size:13px}.ct-copy-ok{font-size:13px;color:#166534;font-weight:800;display:none}.ct-nav a.adult,.ct-btn.adult{background:linear-gradient(135deg,#111827,#7c2d12);color:#fff;border-color:transparent}.ct-download-link{background:#fff;color:var(--purple);border:1px solid var(--line);border-radius:999px;padding:8px 12px;text-decoration:none;font-weight:800;display:inline-block}.ct-forum-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.ct-forum-list{display:grid;gap:12px}.ct-forum-card.compact{margin:0;padding:16px}.ct-forum-attachment{margin-top:10px}.ct-forum-attachment img{max-width:220px;max-height:160px;border-radius:12px;display:block}.ct-forum-attachment video{max-width:260px;max-height:180px;border-radius:12px;display:block}.ct-forum-attachment audio{width:260px;max-width:100%}.ct-forum-tools{position:sticky;top:14px}.ct-forum-recent a{display:block;color:#4b1d82;font-weight:800;text-decoration:none;margin:8px 0}.ct-forum-search{display:grid;gap:8px}.ct-forum-search input,.ct-forum-search select{margin:0!important}@media(max-width:900px){.ct-forum-layout{grid-template-columns:1fr}.ct-forum-tools{position:static}}

/* WEB UPDATE 4 - News Feed community landing page */
body.ct-news-feed{background:radial-gradient(circle at top,#f7f5ff 0,#f3f2f7 42%,#eceaf1 100%)}
.ct-nf-shell{max-width:980px;margin:0 auto 36px;background:rgba(255,255,255,.74);border:1px solid rgba(32,20,60,.08);border-radius:16px;box-shadow:0 22px 70px rgba(26,18,46,.14);overflow:hidden;backdrop-filter:blur(10px)}
.ct-nf-topbar{height:72px;display:flex;align-items:center;gap:22px;padding:0 38px;border-bottom:1px solid rgba(32,20,60,.08);background:rgba(255,255,255,.7)}
.ct-nf-brand-mark{width:34px;height:34px;border-radius:10px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:13px;letter-spacing:-.04em}.ct-nf-tabs{display:flex;gap:26px;align-items:center;flex:1}.ct-nf-tabs a{color:#111;text-decoration:none;font-weight:800}.ct-nf-user{width:42px;height:42px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;color:#111;text-decoration:none;font-size:26px;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.ct-nf-featured{padding:38px 46px 28px}.ct-nf-feature-link{display:block;color:inherit;text-decoration:none;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 16px 44px rgba(20,12,36,.12);border:1px solid rgba(32,20,60,.08)}.ct-nf-media{background:#f3eefc;overflow:hidden;display:flex;align-items:center;justify-content:center}.ct-nf-media.featured{height:430px}.ct-nf-media:not(.featured){height:220px;border-radius:14px 14px 0 0}.ct-nf-media img,.ct-nf-media video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ct-nf-media .ct-audio-thumb,.ct-nf-media .video-thumb{width:100%;height:100%}.ct-nf-feature-body{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 28px}.ct-nf-feature-body h1{margin:0 0 8px;color:#111;font-size:27px;line-height:1.1}.ct-nf-feature-body p{margin:0;color:#27212f;font-weight:700;display:flex;align-items:center;gap:9px}.ct-nf-actions{display:flex;gap:12px}.ct-nf-actions span,.ct-nf-actions button{width:46px;height:46px;border-radius:50%;border:0;background:#f1f0f4;display:flex;align-items:center;justify-content:center;font-size:22px;color:#111;text-decoration:none;cursor:pointer}.ct-nf-divider{height:1px;background:rgba(32,20,60,.08);margin:10px 46px 0}.ct-nf-main{display:grid;grid-template-columns:300px minmax(0,1fr);gap:42px;padding:32px 46px 42px}.ct-nf-sidebar{border-right:1px solid rgba(32,20,60,.08);padding-right:36px}.ct-nf-sidebar h2,.ct-nf-feed-head h2{margin:0 0 20px;color:#111;font-size:25px;letter-spacing:-.03em}.ct-nf-poster-list{display:grid;gap:14px}.ct-nf-poster{display:flex;gap:13px;align-items:center}.ct-nf-poster strong{display:block;color:#191321}.ct-nf-poster small,.ct-nf-post-head small{display:block;color:#6b6474;margin-top:3px}.ct-nf-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#111,#6b2cff);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;flex:0 0 auto;box-shadow:0 8px 20px rgba(40,20,80,.16)}.ct-nf-avatar.small{width:32px;height:32px;font-size:11px}.ct-nf-feed{min-width:0}.ct-nf-feed-head{display:flex;align-items:center;justify-content:space-between}.ct-nf-feed-head a{background:#ebe8ef;color:#111;text-decoration:none;border-radius:14px;padding:12px 18px;font-weight:800}.ct-nf-post{background:#fff;border:1px solid rgba(32,20,60,.08);border-radius:16px;box-shadow:0 12px 34px rgba(20,12,36,.09);overflow:hidden;margin-bottom:22px}.ct-nf-post-head{display:flex;align-items:center;gap:13px;padding:16px 18px}.ct-nf-more{margin-left:auto;color:#111;text-decoration:none;font-weight:900;letter-spacing:2px}.ct-nf-post-link{display:block;color:inherit;text-decoration:none}.ct-nf-post-copy{padding:14px 18px 18px}.ct-nf-post-copy h3{margin:0 0 7px;font-size:18px;color:#111}.ct-nf-post-copy p{margin:0;color:#393242;line-height:1.35}.ct-nf-post-actions{display:flex;gap:14px;align-items:center;padding:0 18px 18px;flex-wrap:wrap}.ct-nf-post-actions a,.ct-nf-post-actions button{border:0;background:transparent;color:#4b1d82;font-weight:900;text-decoration:none;cursor:pointer;padding:0}.ct-nf-post-actions .ct-like-wrap{margin-right:4px}
@media(max-width:900px){.ct-nf-topbar{padding:0 18px;gap:12px}.ct-nf-tabs{gap:12px;overflow:auto}.ct-nf-featured{padding:24px 18px}.ct-nf-media.featured{height:320px}.ct-nf-main{grid-template-columns:1fr;gap:26px;padding:24px 18px}.ct-nf-sidebar{border-right:0;border-bottom:1px solid rgba(32,20,60,.08);padding:0 0 24px}.ct-nf-divider{margin:0 18px}.ct-nf-feature-body{align-items:flex-start;flex-direction:column}.ct-nf-actions span,.ct-nf-actions button{width:40px;height:40px}.ct-nf-shell{border-radius:0}}
@media(max-width:560px){.ct-nf-tabs a{font-size:14px}.ct-nf-media.featured{height:250px}.ct-nf-media:not(.featured){height:180px}.ct-nf-feature-body h1{font-size:23px}}

/* WEB UPDATE 4 V3 - tighter News Feed layout closer to uploaded sample */
body.ct-news-feed{background:radial-gradient(circle at top,#f8f8fb 0,#eeeeF4 55%,#e6e4ec 100%)}
.ct-news-feed .ct-wrap{max-width:980px;padding:18px 16px 34px}.ct-news-feed .ct-nav{margin-bottom:14px}.ct-news-feed .ct-nav a{padding:8px 13px;font-size:13px}
.ct-nf-shell{max-width:820px;border-radius:14px;background:rgba(255,255,255,.76);box-shadow:0 18px 50px rgba(25,20,40,.12)}
.ct-nf-topbar{height:64px;padding:0 28px;gap:20px}.ct-nf-brand-mark{width:31px;height:31px;border-radius:9px}.ct-nf-tabs{gap:22px}.ct-nf-tabs a{font-size:15px}.ct-nf-user{width:38px;height:38px;font-size:23px}
.ct-nf-featured{padding:26px 34px 20px}.ct-nf-feature-link{border-radius:16px;box-shadow:0 12px 30px rgba(20,12,36,.10)}.ct-nf-media.featured{height:255px}.ct-nf-media img,.ct-nf-media video{object-fit:cover;object-position:center}.ct-nf-feature-body{padding:16px 22px}.ct-nf-feature-body h1{font-size:22px;margin-bottom:7px}.ct-nf-feature-body p{font-size:15px}.ct-nf-actions{gap:9px}.ct-nf-actions span,.ct-nf-actions button{width:38px;height:38px;font-size:18px}
.ct-nf-main{grid-template-columns:255px minmax(0,1fr);gap:28px;padding:22px 34px 32px}.ct-nf-sidebar{border-right:1px solid rgba(32,20,60,.08);padding-right:26px}.ct-nf-sidebar h2,.ct-nf-feed-head h2{font-size:22px;margin-bottom:14px}.ct-nf-feed-head a{padding:9px 13px;border-radius:12px;font-size:13px}
.ct-nf-creator-block{background:#111117;color:#fff;border-radius:18px;padding:17px 15px 16px;box-shadow:0 14px 34px rgba(0,0,0,.16);margin-bottom:20px}.ct-nf-creator-block h2{color:#fff;margin-bottom:13px}.ct-nf-block-kicker{color:#b9b5c7;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:5px}.ct-nf-creator-list{display:grid;gap:11px}.ct-nf-creator-row{display:grid;grid-template-columns:22px 38px minmax(0,1fr);gap:9px;align-items:center}.ct-nf-rank{color:#9c97aa;font-weight:900;text-align:center}.ct-nf-creator-row strong{display:block;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-nf-creator-row small{display:block;color:#b9b5c7;margin-top:2px;font-size:12px}.ct-nf-avatar.dark{background:#fff;color:#111;box-shadow:none}.ct-nf-muted{color:#b9b5c7;font-size:13px;margin:0}
.ct-nf-samples-block{margin-top:16px}.ct-nf-sample-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ct-nf-sample{display:block;color:#111;text-decoration:none;background:#fff;border:1px solid rgba(32,20,60,.08);border-radius:12px;overflow:hidden;box-shadow:0 8px 20px rgba(20,12,36,.06)}.ct-nf-sample .ct-nf-media.sample{height:74px;border-radius:0}.ct-nf-sample strong{display:block;padding:8px 9px 9px;font-size:12px;line-height:1.18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-nf-sample .ct-audio-thumb{font-size:11px}.ct-nf-sample .ct-audio-note{width:34px;height:34px;border-radius:12px;font-size:20px}
.ct-nf-post{border-radius:14px;margin-bottom:18px;box-shadow:0 9px 24px rgba(20,12,36,.08)}.ct-nf-post-head{padding:12px 14px}.ct-nf-avatar{width:40px;height:40px;font-size:12px}.ct-nf-avatar.small{width:28px;height:28px;font-size:10px}.ct-nf-post-head small{font-size:12px}.ct-nf-media:not(.featured){height:145px;border-radius:0}.ct-nf-post-copy{padding:11px 14px 13px}.ct-nf-post-copy h3{font-size:16px;margin-bottom:5px}.ct-nf-post-copy p{font-size:13px;line-height:1.32}.ct-nf-post-actions{padding:0 14px 14px;font-size:13px;gap:11px}
@media(max-width:820px){.ct-nf-shell{max-width:100%}.ct-nf-main{grid-template-columns:1fr;padding:20px 18px 26px}.ct-nf-sidebar{border-right:0;border-bottom:1px solid rgba(32,20,60,.08);padding:0 0 22px}.ct-nf-featured{padding:22px 18px 18px}.ct-nf-media.featured{height:230px}.ct-nf-topbar{padding:0 18px}.ct-nf-tabs{gap:14px;overflow:auto}.ct-nf-sample-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.ct-nf-tabs a{font-size:13px}.ct-nf-media.featured{height:190px}.ct-nf-feature-body{padding:14px 16px}.ct-nf-feature-body h1{font-size:20px}.ct-nf-sample-grid{grid-template-columns:1fr 1fr}.ct-nf-media:not(.featured){height:135px}.ct-nf-sample .ct-nf-media.sample{height:68px}}


/* WEB UPDATE 4 V4: News Feed header image fit.
   Show the entire featured/header image instead of cropping it. */
.ct-news-feed .ct-nf-media.featured img,
.ct-news-feed .ct-nf-media.featured video {
    object-fit: contain;
    object-position: center;
    background: #f3eefc;
}


/* WEB UPDATE 4 V5: replace temporary CT badge with clean wordmark. */
.ct-news-feed .ct-nf-brand-mark{
    width:auto;
    height:38px;
    border-radius:999px;
    background:#111;
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:0 14px 0 11px;
    font-weight:900;
    font-size:13px;
    letter-spacing:.01em;
    text-decoration:none;
    white-space:nowrap;
    flex:0 0 auto;
}
.ct-news-feed .ct-nf-brand-icon{
    width:21px;
    height:21px;
    border-radius:7px;
    background:#fff;
    color:#111;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    line-height:1;
}
.ct-news-feed .ct-nf-brand-text{
    display:inline-block;
}
@media(max-width:680px){
    .ct-news-feed .ct-nf-brand-mark{padding:0 10px;width:38px;gap:0}
    .ct-news-feed .ct-nf-brand-text{display:none}
}


/* WEB UPDATE 4 V6: use uploaded Creators Toolbox icon on News Feed header. */
.ct-news-feed .ct-nf-brand-mark{
    width:44px;
    height:44px;
    padding:0;
    border-radius:10px;
    background:transparent;
    box-shadow:none;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 44px;
}
.ct-news-feed .ct-nf-brand-logo{
    width:44px;
    height:44px;
    object-fit:contain;
    display:block;
}
@media(max-width:680px){
    .ct-news-feed .ct-nf-brand-mark{width:40px;height:40px;flex-basis:40px;padding:0}
    .ct-news-feed .ct-nf-brand-logo{width:40px;height:40px}
}

/* WEB UPDATE 4 V7: Recent Post image/video fit.
   Show the full recent post media inside its card instead of cropping it. */
.ct-news-feed .ct-nf-post .ct-nf-media img,
.ct-news-feed .ct-nf-post .ct-nf-media video {
    object-fit: contain;
    object-position: center;
    background: #f3eefc;
}

/* WEB UPDATE 4 V9: Other Samples thumbnail zoom.
   Keep recent posts fitting, but crop/zoom sample thumbnails for stronger preview tiles. */
.ct-news-feed .ct-nf-sample .ct-nf-media.sample img,
.ct-news-feed .ct-nf-sample .ct-nf-media.sample video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.12);
    transform-origin: center;
    background: #f3eefc;
}


/* WEB UPDATE 4 V10: stronger Other Samples thumbnail zoom.
   This overrides the recent-post fit rule and any nested media wrappers. */
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample .video-thumb,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample picture {
    overflow: hidden !important;
}

.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample img,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample video,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample .video-thumb img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.35) !important;
    transform-origin: center center !important;
    display: block !important;
}


/* WEB UPDATE 4 V11: center Other Samples thumbnails.
   Keep thumbnails zoomed, but remove top-biased cropping and center the image inside each tile. */
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample {
    height: 92px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: #f3eefc !important;
}

.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample img,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample video,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample .video-thumb img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
    transform: scale(1.18) !important;
    transform-origin: 50% 50% !important;
    margin: 0 auto !important;
    display: block !important;
}
@media(max-width:560px){
    .ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample {
        height: 84px !important;
    }
}


/* WEB UPDATE 4 V12: 3D/model file thumbnails. */
.ct-model-thumb{
    width:100%;height:100%;min-height:120px;box-sizing:border-box;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:6px;text-align:center;background:linear-gradient(135deg,#141026,#3b1c80 58%,#0fbde2);
    color:#fff;padding:14px;position:relative;overflow:hidden;
}
.ct-model-thumb .ct-model-cube{font-size:34px;line-height:1;text-shadow:0 4px 16px rgba(0,0,0,.25)}
.ct-model-thumb strong{font-size:18px;letter-spacing:.08em;line-height:1}
.ct-model-thumb small{font-size:11px;opacity:.88;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-model-thumb.has-poster img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.ct-model-thumb.has-poster{padding:0;background:#f3eefc}
.ct-model-thumb.large{height:260px;border-radius:16px}
.ct-model-badge{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.68);color:#fff;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:900;letter-spacing:.04em}
.ct-news-feed .ct-nf-media.is-model .ct-model-thumb{min-height:100%;border-radius:0}
.ct-news-feed .ct-nf-media.is-model .ct-model-thumb .ct-model-cube{font-size:30px}


/* WEB UPDATE 4 V13: force 3D/model thumbnails visible and centered on all gallery/news cards. */
.ct-media .ct-model-thumb,
.ct-detail-media .ct-model-thumb,
.ct-news-feed .ct-nf-media.is-model .ct-model-thumb {
    width: 100% !important;
    height: 100% !important;
    min-height: 135px;
    box-sizing: border-box;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center;
}
.ct-detail-media .ct-model-thumb.large { min-height: 260px; }
.ct-model-view .ct-photo-zoom img { object-fit: contain !important; object-position: center center !important; }


/* WEB UPDATE 4 V17: Purple branded News Feed refresh */
body.ct-news-feed {
    background:
        radial-gradient(circle at top left, rgba(164, 116, 255, .35) 0, rgba(164, 116, 255, 0) 34%),
        radial-gradient(circle at top right, rgba(88, 38, 205, .42) 0, rgba(88, 38, 205, 0) 38%),
        linear-gradient(135deg, #160728 0%, #2b0d4f 46%, #6b2cff 100%) !important;
    color: #ffffff;
    min-height: 100vh;
}

.ct-news-feed .ct-wrap {
    max-width: 1180px;
}

.ct-news-feed .ct-nav {
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    padding: 10px;
    box-shadow: 0 18px 44px rgba(0,0,0,.20);
    backdrop-filter: blur(12px);
}

.ct-news-feed .ct-nav a,
.ct-news-feed .ct-nav a.secondary {
    background: rgba(255,255,255,.14);
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.20);
}

.ct-news-feed .ct-nav a:hover,
.ct-news-feed .ct-nav a.secondary:hover {
    background: #ffffff;
    color: #5f22d8;
}

.ct-news-feed .ct-nf-shell {
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(255,255,255,.46) !important;
    box-shadow: 0 28px 80px rgba(8,2,24,.34) !important;
}

.ct-news-feed .ct-nf-topbar {
    background: linear-gradient(135deg, #231039 0%, #481b8f 50%, #7b39ff 100%) !important;
    color: #ffffff;
    border-bottom: 0 !important;
}

.ct-news-feed .ct-nf-brand {
    color: #ffffff !important;
}

.ct-news-feed .ct-nf-brand strong,
.ct-news-feed .ct-nf-brand span,
.ct-news-feed .ct-nf-topbar a {
    color: #ffffff !important;
}

.ct-news-feed .ct-nf-brand-mark {
    background: #ffffff !important;
    border-color: rgba(255,255,255,.72) !important;
    box-shadow: 0 8px 26px rgba(0,0,0,.18);
}

.ct-news-feed .ct-nf-mini-nav a {
    color: #ffffff !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
}

.ct-news-feed .ct-nf-mini-nav a:hover {
    background: #ffffff !important;
    color: #5f22d8 !important;
}

.ct-news-feed .ct-nf-featured {
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,244,255,.98)) !important;
}

.ct-news-feed .ct-nf-featured h1,
.ct-news-feed .ct-nf-featured h2,
.ct-news-feed .ct-nf-main h2,
.ct-news-feed .ct-nf-post-copy h3,
.ct-news-feed .ct-nf-sample strong {
    color: #171321 !important;
}

.ct-news-feed .ct-nf-caption,
.ct-news-feed .ct-nf-post,
.ct-news-feed .ct-nf-sample,
.ct-news-feed .ct-nf-feed-head,
.ct-news-feed .ct-nf-post-copy {
    background: #ffffff !important;
}

.ct-news-feed .ct-nf-top-creators {
    background: linear-gradient(180deg, #160824 0%, #26113d 100%) !important;
    border: 1px solid rgba(205,183,255,.22) !important;
    box-shadow: 0 20px 50px rgba(12,3,26,.25) !important;
}

.ct-news-feed .ct-nf-top-creators h2,
.ct-news-feed .ct-nf-top-creators strong {
    color: #ffffff !important;
}

.ct-news-feed .ct-nf-top-creators small,
.ct-news-feed .ct-nf-top-creators p {
    color: #d8c9ff !important;
}

.ct-news-feed .ct-nf-rank {
    background: linear-gradient(135deg, #a477ff, #6b2cff) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(107,44,255,.34);
}

.ct-news-feed .ct-nf-feed-head a,
.ct-news-feed .ct-nf-post-actions a,
.ct-news-feed .ct-nf-post-actions button {
    color: #6b2cff !important;
}

.ct-news-feed .ct-nf-media,
.ct-news-feed .ct-nf-media.featured,
.ct-news-feed .ct-nf-media.sample {
    background: #f3eefc !important;
}

.ct-news-feed .ct-model-thumb {
    background: linear-gradient(135deg, #2b0d4f, #6b2cff) !important;
    color: #ffffff !important;
}

.ct-news-feed .ct-model-thumb small,
.ct-news-feed .ct-model-thumb strong {
    color: #ffffff !important;
}


/* WEB UPDATE 4 V18: website-to-app record import bridge */
.ct-app-import-box {
    margin: 14px 0 18px;
    padding: 14px;
    border: 1px solid #e8ddff;
    border-radius: 16px;
    background: linear-gradient(135deg, #f8f4ff, #ffffff);
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.ct-app-import-box small {
    color: #5c536d;
    display: block;
    flex-basis: 100%;
    line-height: 1.35;
}

.ct-app-import-btn {
    background: linear-gradient(135deg, #6b2cff, #9b5cff) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(107,44,255,.22);
}

.ct-app-import-inline {
    color: #6b2cff !important;
    font-weight: 900;
    text-decoration: none;
}

.ct-news-feed .ct-app-import-inline {
    background: rgba(107,44,255,.09);
    border: 1px solid rgba(107,44,255,.18);
    border-radius: 999px;
    padding: 7px 10px !important;
}


/* WEB UPDATE 4 V19: News Feed button cleanup.
   The News Feed has its own branded header, so the duplicate pill nav above it is removed. */
.ct-news-feed .ct-wrap {
    padding-top: 18px;
}

.ct-news-feed .ct-nf-shell {
    margin-top: 0 !important;
}


/* WEB UPDATE 4 V20: Community Gallery heading cleanup.
   Text under the Community Gallery caption was removed from community_gallery.php. */


/* WEB UPDATE 4 V21: News Feed Other Samples image fit/bigger.
   Make the Other Samples tile itself taller and make nested images fill the visible tile cleanly. */
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample {
    height: 112px !important;
    min-height: 112px !important;
    border-radius: 0 !important;
    background: #f3eefc !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample img,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample video,
.ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample .video-thumb img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    display: block !important;
}

@media (max-width: 720px) {
    .ct-news-feed .ct-nf-samples-block .ct-nf-sample .ct-nf-media.sample {
        height: 98px !important;
        min-height: 98px !important;
    }
}
