Jump to content
Toggle menu
  • 799 articles
  • 4.8K files
  • 4 users
  • 64.6K edits
2b2t Uncensored
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Front page/styles.css: Difference between revisions

Template page
Front page: centred hero, search row, fancier styling
Front page: full-width search
Line 41: Line 41:
.fp-search .mw-inputbox-centered { text-align: left; margin: 0; }
.fp-search .mw-inputbox-centered { text-align: left; margin: 0; }
.fp-search form { display: flex; gap: 10px; align-items: stretch; margin: 0; }
.fp-search form { display: flex; gap: 10px; align-items: stretch; margin: 0; }
.fp-search form .cdx-text-input { flex: 1 1 auto; min-width: 0; }
.fp-search form br { display: none; }
.fp-search input[name="search"] {
.fp-search input[name="search"] {
flex: 1 1 auto; width: auto !important; max-width: none; min-width: 0; box-sizing: border-box; height: 46px; padding: 0 20px;
width: 100% !important; max-width: none; min-width: 0; box-sizing: border-box; height: 46px; padding: 0 20px;
border-radius: 999px; font-size: 1.05em; background: var(--background-color-base, #fff); color: var(--color-base, #202122);
border-radius: 999px; font-size: 1.05em; background: var(--background-color-base, #fff); color: var(--color-base, #202122);
border: 1px solid var(--border-color-base, #a2a9b1);
border: 1px solid var(--border-color-base, #a2a9b1);

Revision as of 04:05, 3 October 2026

/* 2b2t Uncensored front page. Colours follow Citizen's light/dark theme; red and blue come from the logo. */
.fp { margin-top: 4px; }
.fp a { text-decoration: none; }
.fp-hero {
	position: relative; overflow: hidden; padding: 30px 34px 26px; border-radius: 18px;
	border: 1px solid var(--border-color-subtle, #c8ccd1);
	background:
		radial-gradient(ellipse at 0% 0%, rgba(229, 56, 59, 0.20), rgba(229, 56, 59, 0) 55%),
		radial-gradient(ellipse at 100% 100%, rgba(58, 91, 255, 0.22), rgba(58, 91, 255, 0) 55%),
		var(--background-color-neutral-subtle, #f8f9fa);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
}
.fp-hero-top { display: flex; flex-wrap: wrap; align-items: center; gap: 30px; }
.fp-hero-logo {
	flex: 0 0 auto; background: #03f907; padding: 16px 20px; border-radius: 14px; line-height: 0;
	box-shadow: 0 0 0 4px rgba(3, 249, 7, 0.18), 0 10px 24px rgba(0, 0, 0, 0.25);
	transform: rotate(-2deg); transition: transform 0.2s ease;
}
.fp-hero-logo:hover { transform: rotate(0deg) scale(1.02); }
.fp-hero-logo img { width: 260px; height: auto; }
.fp-hero-text { flex: 1 1 340px; display: flex; flex-direction: column; justify-content: center; }
.fp-kicker {
	align-self: flex-start; margin-bottom: 10px; padding: 3px 12px; border-radius: 999px; font-size: 0.75em; font-weight: 700;
	letter-spacing: 0.14em; text-transform: uppercase; color: #e5383b; border: 1px solid rgba(229, 56, 59, 0.45);
	background: rgba(229, 56, 59, 0.08);
}
.fp-hero-title { font-size: 2.1em; font-weight: 800; line-height: 1.12; letter-spacing: -0.01em; color: var(--color-emphasized, #101418); }
.fp-hero-title .r { color: #e5383b; }
.fp-hero-title .b { color: #3a5bff; }
.fp-hero-sub { margin-top: 8px; font-size: 1.05em; color: var(--color-subtle, #54595d); }
.fp-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 18px; max-width: 560px; }
.fp-stat {
	position: relative; padding: 10px 14px 9px; border-radius: 12px; line-height: 1.25; overflow: hidden;
	background: var(--background-color-base, #fff); border: 1px solid var(--border-color-subtle, #c8ccd1);
}
.fp-stat::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: #3a5bff; }
.fp-stat:nth-child(2n)::before { background: #e5383b; }
.fp-stat b { display: block; font-size: 1.35em; font-weight: 800; color: var(--color-emphasized, #101418); font-variant-numeric: tabular-nums; }
.fp-stat span { font-size: 0.72em; color: var(--color-subtle, #54595d); text-transform: uppercase; letter-spacing: 0.08em; }
.fp-search { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--border-color-subtle, #c8ccd1); }
.fp-search .mw-inputbox-centered { text-align: left; margin: 0; }
.fp-search form { display: flex; gap: 10px; align-items: stretch; margin: 0; }
.fp-search form .cdx-text-input { flex: 1 1 auto; min-width: 0; }
.fp-search form br { display: none; }
.fp-search input[name="search"] {
	width: 100% !important; max-width: none; min-width: 0; box-sizing: border-box; height: 46px; padding: 0 20px;
	border-radius: 999px; font-size: 1.05em; background: var(--background-color-base, #fff); color: var(--color-base, #202122);
	border: 1px solid var(--border-color-base, #a2a9b1);
}
.fp-search input[name="search"]:focus { outline: none; border-color: #3a5bff; box-shadow: 0 0 0 3px rgba(58, 91, 255, 0.25); }
.fp-search input[name="go"] { display: none; }
.fp-search input[name="fulltext"] {
	height: 46px; padding: 0 26px; border-radius: 999px; font-weight: 700; font-size: 1em; cursor: pointer;
	background: #3a5bff; color: #fff; border: 0; box-shadow: 0 6px 16px rgba(58, 91, 255, 0.35);
}
.fp-search input[name="fulltext"]:hover { background: #2f4de0; }

.fp-h-note { margin-left: 8px; padding: 1px 8px; border-radius: 999px; font-size: 0.85em; letter-spacing: 0.04em; text-transform: none; font-weight: 600; color: #3a5bff; border: 1px solid rgba(58, 91, 255, 0.4); }
.fp-h { margin: 32px 0 12px; font-size: 0.85em; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-subtle, #54595d); }

.fp-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.fp-tile {
	position: relative; display: block; padding: 16px 18px 14px; border-radius: 12px; overflow: hidden;
	background: var(--background-color-neutral-subtle, #f8f9fa); border: 1px solid var(--border-color-subtle, #c8ccd1);
	transition: transform 0.15s ease, border-color 0.15s ease;
}
.fp-tile:hover { transform: translateY(-2px); border-color: #3a5bff; }
.fp-tile::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: #3a5bff; }
.fp-tile:nth-child(2n)::before { background: #e5383b; }
.fp-tile a { display: block; font-size: 1.15em; font-weight: 700; color: var(--color-emphasized, #101418); }
.fp-tile a::after { content: ""; position: absolute; inset: 0; }
.fp-tile .n { font-size: 0.85em; color: var(--color-subtle, #54595d); }
.fp-tile .d { margin-top: 4px; font-size: 0.85em; color: var(--color-subtle, #54595d); }

.fp-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.fp-card {
	border-radius: 12px; padding: 16px 18px; background: var(--background-color-neutral-subtle, #f8f9fa);
	border: 1px solid var(--border-color-subtle, #c8ccd1);
}
.fp-card-title { font-weight: 700; font-size: 1.05em; margin-bottom: 8px; color: var(--color-emphasized, #101418); }
.fp-card-title span { font-weight: 400; font-size: 0.8em; color: var(--color-subtle, #54595d); }
.fp-rank { list-style: none; margin: 0; padding: 0; counter-reset: fp; }
.fp-rank li {
	display: flex; align-items: baseline; gap: 10px; margin: 0; padding: 7px 0; counter-increment: fp;
	border-top: 1px solid var(--border-color-subtle, #c8ccd1);
}
.fp-rank li:first-child { border-top: 0; }
.fp-rank li::before { content: counter(fp); min-width: 1.4em; font-weight: 700; color: #e5383b; font-variant-numeric: tabular-nums; }
.fp-rank li:nth-child(n+4)::before { color: var(--color-subtle, #54595d); }
.fp-rank .t { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fp-rank .c { font-size: 0.8em; color: var(--color-subtle, #54595d); font-variant-numeric: tabular-nums; }

.fp-about { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 14px; }
.fp-about p { margin: 0 0 8px; }
.fp-links a { display: block; padding: 6px 0; font-weight: 600; }

@media (max-width: 1000px) {
	.fp-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fp-cols, .fp-about { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
	.fp-hero { padding: 20px; }
	.fp-hero-logo { transform: none; }
	.fp-hero-logo img { width: 200px; }
	.fp-hero-title { font-size: 1.6em; }
	.fp-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fp-search form { flex-direction: column; }
}