html:has(> body.fanfick-app), body.fanfick-app { overscroll-behavior-x: none; }
.thumbnail,
.card-image,
.thumbnail > img { border-radius: 8px; }

.thumbnail { position:relative; width: 100%; height: 100%; overflow: hidden; }
.thumbnail > img { width: 100%; height: 100%; object-fit: cover; background-color: #000; }
.thumbnail.blur { isolation: isolate; background-size: 0 0; }
.thumbnail.blur > img { position: absolute; inset: -96px; width: calc(100% + 192px); height: calc(100% + 192px); max-width: none; object-fit: cover; transform: none; filter: blur(var(--ff-thumb-blur, 12px)); z-index: -2; }
.thumbnail.blur::after { content: ''; position: absolute; inset: -96px; border: 96px solid transparent; background-image: inherit; background-size: cover; background-position: center; background-repeat: no-repeat; filter: blur(var(--ff-thumb-blur, 12px)); z-index: -1; }

.card { cursor: pointer; }
.card-info { padding: 14px 4px 20px; }
.card-title { font-size: 15px; color: #111; font-weight: 400; line-height: 1.5; letter-spacing: -0.2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.card-meta { display: flex; align-items: center; justify-content: space-between; font-size: 12px; margin-top: 6px; }
.card-author { color: #888; letter-spacing: 0.8px; font-weight: 400; font-size: 11px; }
.card-date { color: #bbb; font-weight: 300; font-size: 12px; }

.sex-filter { display: flex; justify-content: center; gap: 8px; margin-bottom: 20px; }
.sex-filter button { padding: 6px 16px; border: 1.5px solid #e0e0e0; border-radius: 18px; background: #fff; font-size: 12px; color: #555; cursor: pointer; transition: all .15s; }
.sex-filter button.active { background: #e9c46a; border-color: #e9c46a; color: #1b1b1f; font-weight: 600; }

.gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; width: 100%; }
.gallery .card.hide { display: block; }
.gallery .card-image { width: 100%; height: 320px; position: relative; overflow: hidden; }

.grid-lookbook { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.grid-lookbook .card-image { width: 100%; height: 300px; position: relative; overflow: hidden; }
.grid-lookbook .card-info { padding: 10px 2px 6px; }
.grid-lookbook .card-title { font-size: 13px; }
.grid-lookbook .card-meta { margin-top: 4px; }

.grid-pictorial { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.grid-pictorial .card-image { width: 100%; height: 280px; position: relative; overflow: hidden; }

.grid-latest { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding-top:16px; }
.grid-latest .card-image { width: 100%; height: 280px; position: relative; overflow: hidden; }

.model-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 40px; padding: 15px 0; margin: 8px 0; }
.model-bar-item { display: flex; flex-direction: column; align-items: center; gap: 8px; transition: opacity 0.2s; }
.model-bar-item img { width: 82px; height: 82px; object-fit: cover; border-radius: 50%; border: 2px solid #e5e5e5; transition: 0.3s; }
.model-bar-item:hover img { box-shadow: 0 0 12px rgba(0, 0, 0, 0.2); }
.model-bar-item span { font-size: 12px; font-weight: 500; color: #333; letter-spacing: 0.3px; }
.model-bar-img {background-color:#000;background-size:cover;background-position:center center;background-repeat:no-repeat;border-radius:50%;width:80px;height:80px;}

@media (max-width: 999px) {
    .sex-filter { justify-content: center; }

    .grid-lookbook,
    .grid-pictorial,
    .grid-latest { display: block; }

    .grid-lookbook .card-image,
    .grid-pictorial .card-image,
    .grid-latest .card-image { height: 400px; }

    .grid-lookbook .card-info,
    .grid-pictorial .card-info,
    .grid-latest .card-info { padding: 9px 1px 10px; margin-bottom: 10px; }
    .grid-lookbook .card-title { font-size: 15px; }

    .section-divider.lookbook { margin: 0 0 14px; }
    .model-bar { align-items: flex-start; gap: 15px; padding: 0; margin: -6px 6px 15px; max-height: none !important; overflow: visible; }
    .model-bar-item { flex: 1; min-width: 0; text-align: center; }
    .model-bar-item img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; border: 0; }
    .model-bar-item:hover img { box-shadow: unset; }
    .model-bar-item span { display: none; }
}
@media (min-width: 1000px) {
	body.fanfick-app header.pc, body.fanfick-app .sidebar { display: none !important; }
	body.fanfick-app main { display: block; max-width: none; margin: 0; min-height: 0; }
	body.fanfick-app.pc-deco .main-content.pc { flex: 1 1 auto; min-width: 0; max-width: 1480px; width: auto; height: 92vh; overflow-y: auto; margin: 0; padding: 26px 26px 44px; border: 1px solid #26262f; border-radius: 20px; background: transparent; box-shadow: 0 24px 70px rgba(0,0,0,.55); box-sizing: border-box; scrollbar-width: none; }
	body.fanfick-app.pc-deco .main-content.pc::-webkit-scrollbar { display: none; }
	body.fanfick-app.pc-deco .main-content.pc::-webkit-scrollbar-thumb { background: #2c2c33; border-radius: 6px; }
	.main-content.pc { max-width: 1480px; margin: 0 auto; padding: 8px 28px 72px; }
	.main-content.pc .section-divider { display: flex; align-items: center; gap: 18px; margin: 46px 2px 22px; }
	.main-content.pc .section-divider:first-child { margin-top: 0; }
	.main-content.pc .section-divider::before, .main-content.pc .section-divider::after { content: ''; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, #2c2740, transparent); }
	.main-content.pc .divider-text { font-size: 13px; font-weight: 800; letter-spacing: 5px; color: #e8e6f0; white-space: nowrap; }

	.main-content.pc .card { border-radius: 16px; overflow: hidden; position: relative; box-shadow: 0 8px 26px rgba(0,0,0,.45); transition: box-shadow .25s, transform .25s; }
	.main-content.pc .card:hover { box-shadow: 0 16px 44px rgba(0,0,0,.6); transform: translateY(-3px); }
	.main-content.pc .card-image { border-radius: 16px; overflow: hidden; height: 100%; }
	.main-content.pc .thumbnail { transition: transform .55s cubic-bezier(.22, .61, .36, 1); }
	.main-content.pc .card:hover .thumbnail { transform: scale(1.06); }
	.main-content.pc .card::before { content: ''; position: absolute; inset: 0; z-index: 1; border-radius: 16px; background: linear-gradient(180deg, transparent 52%, rgba(0,0,0,.55)); opacity: 0; transition: opacity .3s; pointer-events: none; }
	.main-content.pc .card:hover::before { opacity: 1; }
	.main-content.pc .card::after { content: attr(data-sv-name); position: absolute; left: 16px; bottom: 13px; z-index: 2; color: #fff; font-size: 15px; font-weight: 700; letter-spacing: -.2px; text-shadow: 0 1px 10px rgba(0,0,0,.7); opacity: 0; transform: translateY(8px); transition: opacity .3s, transform .3s; pointer-events: none; }
	.main-content.pc .card:hover::after { opacity: 1; transform: none; }
	.main-content.pc .grid-lookbook { grid-template-columns: repeat(4, 1fr); grid-auto-rows: clamp(150px, 20vh, 196px); gap: 16px; }
	.main-content.pc .grid-lookbook .card { height: 100%; }
	.main-content.pc .grid-lookbook .card:first-child { grid-column: span 2; grid-row: span 2; }
	.main-content.pc .grid-lookbook .card-image { height: 100%; }

	.main-content.pc .grid-pictorial { grid-template-columns: repeat(3, 1fr); gap: 18px; }
	.main-content.pc .grid-latest { grid-template-columns: repeat(4, 1fr); gap: 16px; padding-top: 22px; }
	.main-content.pc .grid-pictorial .card-image { height: 380px; }
	.main-content.pc .grid-latest .card-image { height: 320px; }

	.main-content.pc .model-bar { gap: 20px; }
}

body { background: radial-gradient(1100px 680px at 50% -10%, #16131f, #0a0a0d 62%) no-repeat fixed #0a0a0d; color: #e8e6f0; }
body main { max-width: 1680px; }
body header.pc { background: #121016; border-bottom: 1px solid #23202e; }
body header.pc .logo img { filter: brightness(0) invert(1); opacity: .92; }
body footer { background: #0c0b10; border-top: 1px solid #23202e; color: #6f6f77; }
body footer a, body footer .footer-link ul li a { color: #9a93b2; }
body footer .footer-link ul li:not(:last-child)::after { background: #2c2740; }
body .sidebar { background: #121016; border-right: 1px solid #23202e; }
body .sidebar .sidebar-section::after { background: #23202e; }
body .sidebar .sidebar-label { color: #9a93b2; }
body .sidebar .menu-item { color: #d8d4e6; }
body .sidebar .menu-item:hover { background: #1c1a26; }
body .sidebar .menu-item img { filter: none; border-color: transparent; }
body .sidebar-btn { background: #17151f; border-color: #2c2740; color: #d8d4e6; }
body .sidebar-btn.primary { background: linear-gradient(180deg,#ecc977,#e0b455); border-color: transparent; color: #241d07; }
body .sidebar-search .search-input { background: #1c1a26; border-color: #2c2740; color: #e8e6f0; }
body .sidebar-search .search-input:focus { border-color: #7a5cff; }
body input { background: #1c1a26; border-color: #2c2740; color: #e8e6f0; }
body .sidebar-mygrade .mygrade-cnt { color: #9a93b2 !important; }
body .model-bar-item span { color: #cfcadf; }
body .model-bar-item img { border-color: #2c2740; }
body .sex-filter button { background: #17151f; border-color: #2c2740; color: #b8b2c8; }
body .sex-filter button.active { background: #e9c46a; border-color: #e9c46a; color: #1b1b1f; }
body .scroll-loader .spinner { border-top-color: rgba(232,196,104,.95); }

.main-list .main-bb { margin: 0 0 -12px; border-radius: 12px; overflow: hidden; }

