/* Vice açılış sayfası imza katmanı (viceroleplay.com, vice_portal_2026.php).
   vice-ui.min.css ve vice-portal-refresh-2026.css'ten sonra yüklenir; yalnız görünüm.
   Forumdaki vice-city-system dili: ViceDisplay başlıklar, Barlow Condensed etiketler,
   altın kesik köşeli düğmeler, olay yeri şeridi. Açık ve koyu modu birlikte destekler. */
.vp-page {
	--sig-gold-fill: #e7cb89;
	--sig-on-gold: #14171c;
	--sig-gold: #7a5a1c;
	--sig-pink: #9e0d5a;
	--sig-ocean: #1d7f8c;
	--sig-display: ViceDisplay, "Bebas Neue", Impact, sans-serif;
	--sig-cond: "Barlow Condensed", Barlow, "Arial Narrow", sans-serif;
	--sig-sans: Barlow, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--sig-mono: "JetBrains Mono", Consolas, monospace;
	font-family: var(--sig-sans);
}
html[data-vice-mode="dark"] .vp-page {
	--sig-gold: #e7cb89;
	--sig-pink: #f49ac1;
	--sig-ocean: #7fd6e0;
}

/* etiketler ve başlıklar */
.vp-page .vp-eyebrow {
	font-family: var(--sig-cond);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--sig-gold);
}
.vp-page .vp-section .vp-eyebrow { border-bottom: 2px solid var(--sig-pink); padding-bottom: 6px; }
.vp-page .vp-section-head h2,
.vp-page .vp-story-heading h2,
.vp-page .vp-role-layout h2,
.vp-page .vp-community-inner h2,
.vp-page .vp-join-title h2,
.vp-page .vcs-portal h2,
.vp-page .vp-discord h2,
.vp-page .vp-media h2 {
	font-family: var(--sig-display);
	font-size: clamp(40px, 4.2vw, 60px);
	font-weight: 400;
	line-height: .95;
	letter-spacing: .01em;
	text-transform: uppercase;
	text-wrap: balance;
}
.vp-page .vp-world-content h3,
.vp-page .vp-steps h3,
.vp-page .vp-panel-heading,
.vp-page .vp-project-detail h3,
.vp-page .vp-story-values h3 {
	font-family: var(--sig-display);
	font-weight: 400;
	letter-spacing: .02em;
	text-transform: uppercase;
	line-height: 1;
}
.vp-page .vp-world-content h3 { font-size: 38px; }
.vp-page .vp-steps h3,
.vp-page .vp-story-values h3 { font-size: 27px; }

/* bölüm başlık kartları: altın üst çizgi, kesik köşe */
.vp-page .vp-section-head,
.vp-page .vp-story-heading {
	position: relative;
	border-top: 3px solid var(--sig-gold-fill);
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 22px), calc(100% - 22px) 100%, 0 100%);
}

/* düğmeler */
.vp-page .vp-btn {
	gap: 12px;
	padding: 12px 30px 12px 22px;
	border-radius: 4px;
	background: var(--sig-gold-fill);
	color: var(--sig-on-gold) !important;
	font-family: var(--sig-cond);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 16px), calc(100% - 11px) 100%, 0 100%);
}
.vp-page .vp-btn:hover { background: var(--vp-ink); color: var(--vp-bg) !important; }
.vp-page .vp-btn-small { padding: 8px 22px 8px 15px; font-size: 14px; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), calc(100% - 9px) 100%, 0 100%); }
.vp-page .vp-btn:focus-visible { outline: 2px solid var(--vp-blue); outline-offset: 3px; }
.vp-page .vp-world-link,
.vp-page .vp-text-link {
	color: var(--sig-gold) !important;
	font-family: var(--sig-cond);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.vp-page .vp-world-link:hover,
.vp-page .vp-text-link:hover { color: var(--sig-pink) !important; }

/* dünya kartları */
.vp-page .vp-world { clip-path: polygon(0 0, 100% 0, 100% calc(100% - 26px), calc(100% - 26px) 100%, 0 100%); }
.vp-page .vp-world-media { border-bottom-color: var(--sig-gold-fill); }
.vp-page .vp-world-game,
.vp-page .vp-world-meta {
	font-family: var(--sig-cond);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.vp-page .vp-world-game { color: var(--sig-gold); }
.vp-page .vp-badge {
	font-family: var(--sig-cond);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	border-radius: 3px;
}

/* sahne seçimi ve karakter dosyası */
.vp-page .vp-role-choices button { font-family: var(--sig-cond); font-size: 15px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; border-radius: 3px; }
.vp-page .vp-role-choices button[aria-pressed="true"] { color: var(--sig-on-gold); background: var(--sig-gold-fill); border-color: var(--sig-gold-fill); }
.vp-page .vp-character-bottom input { accent-color: var(--sig-gold-fill); }
.vp-page .vp-scene-heading { font-family: var(--sig-mono); color: var(--sig-gold); }

/* katılım adımları */
.vp-page .vp-steps li { border-top-color: var(--sig-gold-fill); border-radius: 4px; }
.vp-page .vp-steps li:nth-child(2) { --vp-step-accent: var(--sig-pink); border-top-color: var(--sig-pink); }
.vp-page .vp-steps li:nth-child(3) { --vp-step-accent: var(--sig-ocean); border-top-color: var(--sig-ocean); }
.vp-page .vp-step-number { font-family: var(--sig-display); font-size: 44px; font-weight: 400; line-height: 1; color: var(--vp-step-accent, var(--sig-gold)); }
.vp-page .vp-steps li:first-child .vp-step-number { color: var(--sig-gold); }
.vp-page .vp-join-tabs a {
	font-family: var(--sig-cond);
	font-size: 17px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.vp-page .vp-join-tabs a[aria-selected="true"],
.vp-page .vp-join-tabs a.is-active { border-color: var(--sig-gold-fill); color: var(--vp-ink); }
.vp-page .vp-connect-row code,
.vp-page .vp-copy { font-family: var(--sig-mono); }

/* hikâye istatistikleri */
.vp-page .vp-stats strong {
	font-family: var(--sig-display);
	font-size: clamp(44px, 4vw, 60px);
	font-weight: 400;
	letter-spacing: .02em;
	color: var(--sig-gold);
}
.vp-page .vp-stats span,
.vp-page .vp-stats-source {
	font-family: var(--sig-cond);
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
}

/* Discord ve topluluk */
.vp-page .vp-discord-brand { border-top-color: var(--sig-gold-fill); border-radius: 4px; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 26px), calc(100% - 26px) 100%, 0 100%); }
.vp-page .vp-discord-icon { color: var(--sig-pink); }
.vp-page .vp-discord-address { font-family: var(--sig-mono); font-size: 28px; }
.vp-page .vp-discord-members strong { font-family: var(--sig-display); font-weight: 400; font-size: 54px; color: var(--sig-gold); }
.vp-page .vp-community-links a { border-radius: 4px; }
.vp-page .vp-community-links a:hover { border-color: var(--sig-gold-fill); }
.vp-page .vp-community-links a > i:first-child { color: var(--sig-gold); }
.vp-page .vp-reel { border-bottom-color: var(--sig-gold-fill); }
.vp-page .vp-reel-views { font-family: var(--sig-cond); letter-spacing: .04em; }

/* hero alt çubuğu: canlı durum */
.vp-page .vp-entry-bottom {
	font-family: var(--sig-mono);
	letter-spacing: .02em;
	text-transform: uppercase;
	border-top: 1px solid rgba(231, 203, 137, .28);
}
.vp-page .vp-entry-bottom a:hover { color: var(--sig-gold-fill); }

/* olay yeri şeridi */
.vp-page .vp-tape {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 22px;
	min-height: 40px;
	margin: -6px -12px 0;
	padding: 0 16px;
	overflow: hidden;
	transform: rotate(-.7deg);
	background: repeating-linear-gradient(60deg, var(--sig-gold-fill) 0 18px, var(--sig-on-gold) 18px 24px);
	box-shadow: 0 10px 26px rgba(0, 0, 0, .3);
}
.vp-page .vp-tape > span {
	flex: none;
	padding: 2px 9px;
	background: var(--sig-gold-fill);
	color: var(--sig-on-gold);
	font: 700 13px/1.4 var(--sig-cond);
	letter-spacing: .18em;
	text-transform: uppercase;
	white-space: nowrap;
}
.vp-page .vp-footer .vp-tape { margin: -32px -12px 34px; transform: rotate(.6deg); }
.vp-page .vp-footer-bottom,
.vp-page .vp-art-credit { font-family: var(--sig-sans); }
.vp-page .vp-wanted i { color: var(--sig-gold-fill); }

@media (max-width: 760px) {
	.vp-page .vp-section-head h2,
	.vp-page .vp-story-heading h2,
	.vp-page .vp-role-layout h2,
	.vp-page .vp-community-inner h2,
	.vp-page .vp-join-title h2,
	.vp-page .vcs-portal h2,
	.vp-page .vp-discord h2,
	.vp-page .vp-media h2 { font-size: 40px; }
	.vp-page .vp-world-content h3 { font-size: 32px; }
	.vp-page .vp-discord-address { font-size: 22px; }
	.vp-page .vp-tape > span { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
	.vp-page .vp-btn { transition: none; }
}

/* marka adı sarmalayıcıları (vice_portal_brand_lang): görünümü hiç etkilemesin */
.vp-page .vp-bl,
.vp-page .vp-bl > span[lang="en"] {
	display: inline !important;
	position: static !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: inherit !important;
	font: inherit !important;
	letter-spacing: inherit !important;
	text-transform: inherit !important;
	opacity: 1 !important;
}

/* Şehirden kareler: Social şeritleri (vice_portal_social.php) */
.vp-page .vp-social .vps-world { --vps-accent: #f49ac1; display: block; width: 100%; min-width: 0; margin-top: 30px; }
.vp-page .vp-social .vps-world--gta5 { --vps-accent: #e7cb89; }
.vp-page .vps-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.vp-page .vps-head h3 { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 14px; margin: 0; }
.vp-page .vps-city { font-family: var(--sig-display); font-size: 38px; font-weight: 400; line-height: 1; letter-spacing: .02em; text-transform: uppercase; color: var(--vp-ink); }
.vp-page .vps-city::after { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 10px; border-radius: 50%; background: var(--vps-accent); vertical-align: middle; transform: translateY(-4px); }
.vp-page .vps-head small { font-family: var(--sig-cond); font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--vp-muted); }
.vp-page .vps-nav { display: flex; gap: 8px; }
.vp-page .vps-nav button {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--vp-card-line);
	border-radius: 4px;
	background: var(--vp-surface);
	color: var(--vp-ink);
	cursor: pointer;
	transition: border-color .15s ease, color .15s ease;
}
.vp-page .vps-nav button:hover { border-color: var(--sig-gold-fill); color: var(--sig-gold); }
.vp-page .vps-nav button:focus-visible { outline: 2px solid var(--vp-blue); outline-offset: 2px; }
.vp-page .vps-rail {
	display: grid;
	width: 100%;
	grid-auto-flow: column;
	grid-auto-columns: clamp(196px, calc((100% - 64px) / 5), 260px);
	gap: 16px;
	margin: 16px 0 0;
	padding: 0 0 12px;
	list-style: none;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	scrollbar-color: var(--sig-gold-fill) transparent;
}
.vp-page .vps-rail > li { scroll-snap-align: start; min-width: 0; }
.vp-page .vps-card {
	position: relative;
	display: block;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: 4px;
	border-bottom: 3px solid var(--vps-accent);
	background: #14171c;
	color: #fff !important;
	text-decoration: none !important;
	clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%);
}
.vp-page .vps-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.vp-page .vps-card:hover .vps-img,
.vp-page .vps-card:focus-visible .vps-img { transform: scale(1.05); }
.vp-page .vps-card:focus-visible { outline: 3px solid var(--vps-accent); outline-offset: -3px; }
.vp-page .vps-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 12, 18, 0) 38%, rgba(10, 12, 18, .72) 68%, rgba(10, 12, 18, .94) 100%); }
.vp-page .vps-body { position: absolute; left: 0; right: 0; bottom: 0; display: grid; gap: 8px; padding: 14px; }
.vp-page .vps-who { display: flex; align-items: center; gap: 9px; min-width: 0; }
.vp-page .vps-who > img,
.vp-page .vps-initial { flex: none; width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--vps-accent); object-fit: cover; }
.vp-page .vps-initial { display: inline-flex; align-items: center; justify-content: center; background: #232a35; font: 600 15px var(--sig-cond); }
.vp-page .vps-who > span { display: grid; min-width: 0; line-height: 1.2; }
.vp-page .vps-who strong { overflow: hidden; font: 600 15px var(--sig-sans); white-space: nowrap; text-overflow: ellipsis; color: #fff; }
.vp-page .vps-who small { font: 500 12px var(--sig-cond); letter-spacing: .06em; text-transform: uppercase; color: rgba(255, 255, 255, .7); }
.vp-page .vps-cap { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 13px; line-height: 1.45; color: rgba(255, 255, 255, .9); }
.vp-page .vps-stats { display: flex; gap: 14px; font: 600 13px var(--sig-cond); letter-spacing: .04em; color: rgba(255, 255, 255, .85); }
.vp-page .vps-stats i { margin-right: 5px; color: var(--vps-accent); }
@media (max-width: 760px) {
	.vp-page .vps-city { font-size: 30px; }
	.vp-page .vps-head small { flex-basis: 100%; }
	.vp-page .vps-rail { grid-auto-columns: 72%; gap: 12px; }
	.vp-page .vps-nav { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.vp-page .vps-img { transition: none; }
}