Jump to content

MediaWiki:Mainpage.css: Difference between revisions

From ZelocoreCMS Wiki
v3.0 final: TemplateStyles-safe CSS β€” standard flex, no vendor prefixes, no custom properties
Test minimal CSS to diagnose TemplateStyles issue
Tag: Replaced
Line 1: Line 1:
/* ═══════════════════════════════════════════════════════════════════
/* Test: minimal safe CSS for TemplateStyles */
Β  ZelocoreCMS Wiki β€” Mainpage.cssΒ  v3.0
Β  Modern world-class design β€” TemplateStyles safe
Β  ═══════════════════════════════════════════════════════════════════ */
Β 
/* ── Hide page title ───────────────────────────────────────────────── */
.mw-parser-output #firstHeading,
.mw-parser-output .firstHeading,
.mw-parser-output .mw-page-title-main { display: none !important; }
Β 
/* ── Top banner ────────────────────────────────────────────────────── */
.mw-parser-output #mp-topbanner {
Β  background: linear-gradient(90deg, #eff6ff, #f5f3ff);
Β  border: 1px solid #c7d2fe;
Β  border-radius: 12px;
Β  padding: 10px 20px;
Β  margin-bottom: 18px;
Β  text-align: center;
Β  font-size: 1em;
Β  color: #1e1b4b;
}
.mw-parser-output #mp-topbanner a { color: #2563eb; font-weight: 600; }
Β 
/* ══ HERO ══════════════════════════════════════════════════════════════ */
.mw-parser-output #mp-hero {
.mw-parser-output #mp-hero {
Β Β  background: linear-gradient(135deg, #1e1b4b 0%, #2563eb 55%, #7c3aed 100%);
Β Β  background: #1e1b4b;
Β Β  border-radius: 12px;
Β Β  color: #ffffff;
Β Β  padding: 48px 32px 38px;
Β Β  padding: 40px 20px;
Β  margin-bottom: 26px;
Β Β  text-align: center;
Β Β  text-align: center;
Β Β  overflow: hidden;
Β Β  border-radius: 8px;
Β  margin-bottom: 20px;
}
}
.mw-parser-output #mp-hero-title {
.mw-parser-output #mp-hero-title {
Β Β  font-size: 2.5em;
Β Β  font-size: 2em;
Β Β  font-weight: 800;
Β Β  font-weight: bold;
Β  color: #ffffff;
Β  letter-spacing: -1px;
Β  margin: 0 0 14px;
Β  text-shadow: 0 2px 12px rgba(0,0,0,.35);
}
.mw-parser-output #mp-hero-subtitle {
Β  font-size: 1.06em;
Β  color: rgba(255,255,255,.85);
Β  max-width: 600px;
Β  margin: 0 auto 28px;
Β  line-height: 1.65;
}
Β 
/* Stats row β€” use flex */
.mw-parser-output #mp-hero-stats {
Β  display: flex;
Β  justify-content: center;
Β  flex-wrap: wrap;
Β  gap: 14px;
Β  margin-bottom: 28px;
}
.mw-parser-output .mp-stat {
Β  display: flex;
Β  flex-direction: column;
Β  align-items: center;
Β  background: rgba(255,255,255,.12);
Β  border: 1px solid rgba(255,255,255,.22);
Β  border-radius: 10px;
Β  padding: 12px 20px;
Β  min-width: 80px;
}
.mw-parser-output .mp-stat-num {
Β  font-size: 1.7em;
Β  font-weight: 800;
Β Β  color: #ffffff;
Β Β  color: #ffffff;
Β  line-height: 1;
}
.mw-parser-output .mp-stat-label {
Β  font-size: .72em;
Β  color: rgba(255,255,255,.72);
Β  margin-top: 4px;
Β  text-transform: uppercase;
Β  letter-spacing: .5px;
}
/* Hero actions */
.mw-parser-output #mp-hero-actions {
Β  display: flex;
Β  flex-direction: column;
Β  align-items: center;
Β  gap: 12px;
}
.mw-parser-output #mp-hero-links { margin-top: 4px; }
.mw-parser-output #mp-hero-links a {
Β  display: inline-block;
Β  background: rgba(255,255,255,.15);
Β  color: #ffffff !important;
Β  border: 1px solid rgba(255,255,255,.3);
Β  border-radius: 20px;
Β  padding: 7px 16px;
Β  margin: 3px;
Β  font-size: .9em;
Β  font-weight: 700;
Β  text-decoration: none !important;
}
/* ══ CATEGORY CARDS ════════════════════════════════════════════════════ */
.mw-parser-output #mp-categories { margin-bottom: 26px; }
.mw-parser-output .mp-section-title {
Β  font-size: 1.1em;
Β  font-weight: 800;
Β  color: #0f172a;
Β  margin-bottom: 12px;
Β  padding-bottom: 7px;
Β  border-bottom: 3px solid #2563eb;
Β  display: inline-block;
}
.mw-parser-output .mp-cat-grid {
Β  display: flex;
Β  flex-wrap: wrap;
Β  gap: 12px;
}
.mw-parser-output .mp-cat-card {
Β  flex: 1 1 140px;
Β  border-radius: 12px;
Β  padding: 18px 10px;
Β  text-align: center;
Β  border: 1.5px solid #e2e8f0;
Β  transition: transform .22s;
}
.mw-parser-output .mp-cat-card:hover { transform: translateY(-5px); }
.mw-parser-output .mp-cat-card a {
Β  display: flex;
Β  flex-direction: column;
Β  align-items: center;
Β  gap: 5px;
Β  text-decoration: none !important;
Β  color: inherit !important;
}
.mw-parser-output .mp-cat-icon { font-size: 2.2em; line-height: 1; display: block; }
.mw-parser-output .mp-cat-name { font-size: .87em; font-weight: 800; display: block; margin-top: 3px; }
.mw-parser-output .mp-cat-desc { font-size: .72em; color: #64748b; display: block; line-height: 1.3; }
/* Card colour themes */
.mw-parser-output .mp-cat-bloggingΒ  { background: linear-gradient(135deg,#fef3c7,#fde68a); border-color: #f59e0b; }
.mw-parser-output .mp-cat-headlessΒ  { background: linear-gradient(135deg,#ede9fe,#ddd6fe); border-color: #7c3aed; }
.mw-parser-output .mp-cat-ecommerceΒ  { background: linear-gradient(135deg,#dcfce7,#bbf7d0); border-color: #059669; }
.mw-parser-output .mp-cat-enterprise { background: linear-gradient(135deg,#dbeafe,#bfdbfe); border-color: #2563eb; }
.mw-parser-output .mp-cat-opensource { background: linear-gradient(135deg,#fee2e2,#fecaca); border-color: #dc2626; }
.mw-parser-output .mp-cat-saasΒ  Β  Β  { background: linear-gradient(135deg,#e0f2fe,#bae6fd); border-color: #0891b2; }
.mw-parser-output .mp-cat-wikiΒ  Β  Β  { background: linear-gradient(135deg,#f0fdf4,#dcfce7); border-color: #16a34a; }
.mw-parser-output .mp-cat-allΒ  Β  Β  Β  { background: linear-gradient(135deg,#f1f5f9,#e2e8f0); border-color: #94a3b8; }
/* ══ TWO-COLUMN LAYOUT ═════════════════════════════════════════════════ */
.mw-parser-output #mp-upper {
Β  display: flex;
Β  flex-wrap: wrap;
Β  gap: 18px;
Β  margin-bottom: 26px;
Β  align-items: flex-start;
}
.mw-parser-output #mp-leftΒ  { flex: 1 1 55%; min-width: 300px; }
.mw-parser-output #mp-right { flex: 1 1 38%; min-width: 280px; }
/* ══ CARDS ══════════════════════════════════════════════════════════════ */
.mw-parser-output .mp-card {
Β  background: #ffffff;
Β  border: 1px solid #e2e8f0;
Β  border-radius: 12px;
Β  overflow: hidden;
Β  margin-bottom: 16px;
Β  box-shadow: 0 2px 14px rgba(37,99,235,.07);
Β  transition: box-shadow .22s, transform .22s;
}
.mw-parser-output .mp-card:hover {
Β  box-shadow: 0 8px 30px rgba(37,99,235,.16);
Β  transform: translateY(-2px);
}
.mw-parser-output .mp-card-header {
Β  padding: 11px 15px;
Β  font-weight: 800;
Β  font-size: .95em;
Β  border-bottom: 1px solid #e2e8f0;
}
.mw-parser-output .mp-card-header-blueΒ  { background: linear-gradient(90deg,#dbeafe,#eff6ff); color: #1d4ed8; }
.mw-parser-output .mp-card-header-yellow { background: linear-gradient(90deg,#fef9c3,#fefce8); color: #92400e; }
.mw-parser-output .mp-card-header-greenΒ  { background: linear-gradient(90deg,#dcfce7,#f0fdf4); color: #065f46; }
.mw-parser-output .mp-card-header-purple { background: linear-gradient(90deg,#ede9fe,#f5f3ff); color: #5b21b6; }
.mw-parser-output .mp-card-header-grayΒ  { background: linear-gradient(90deg,#f1f5f9,#f8fafc); color: #334155; }
.mw-parser-output .mp-card-body { padding: 13px 15px; font-size: .9em; line-height: 1.65; color: #0f172a; }
.mw-parser-output .mp-card-body ul { margin: 0; padding-left: 1.4em; }
.mw-parser-output .mp-card-body li { margin-bottom: 5px; }
.mw-parser-output .mp-card-body table { width: 100%; overflow-x: auto; display: block; }
/* ══ PORTAL GRID ════════════════════════════════════════════════════════ */
.mw-parser-output #mp-portals {
Β  background: #ffffff;
Β  border: 1px solid #e2e8f0;
Β  border-radius: 12px;
Β  overflow: hidden;
Β  margin-top: 22px;
Β  box-shadow: 0 2px 14px rgba(37,99,235,.07);
}
.mw-parser-output #mp-portals-header {
Β  background: linear-gradient(90deg, #1e1b4b, #2563eb);
Β  color: #ffffff;
Β  padding: 12px 18px;
Β  font-weight: 800;
Β  font-size: 1em;
}
.mw-parser-output .mp-portal-grid {
Β  display: flex;
Β  flex-wrap: wrap;
Β  background: #ffffff;
}
.mw-parser-output .mp-portal-cell {
Β  flex: 1 1 140px;
Β  border-right: 1px solid #e2e8f0;
Β  border-bottom: 1px solid #e2e8f0;
Β  padding: 16px 10px;
Β  text-align: center;
Β  font-size: .85em;
Β  transition: background .18s;
}
.mw-parser-output .mp-portal-cell:hover { background: #eff6ff; }
.mw-parser-output .mp-portal-cell a { color: #2563eb !important; font-weight: 700; display: block; text-decoration: none; }
.mw-parser-output .mp-portal-icon { font-size: 2em; display: block; margin-bottom: 5px; }
.mw-parser-output .mp-portal-desc { display: block; color: #64748b; font-size: .8em; margin-top: 3px; font-weight: 400; }
/* ══ CONTRIBUTE CTA ════════════════════════════════════════════════════ */
.mw-parser-output #mp-contribute {
Β  background: linear-gradient(135deg, #059669, #065f46);
Β  border-radius: 12px;
Β  padding: 30px 22px;
Β  text-align: center;
Β  margin-top: 26px;
Β  color: #ffffff;
}
.mw-parser-output #mp-contribute-title { font-size: 1.25em; font-weight: 800; color: #ffffff; margin-bottom: 9px; }
.mw-parser-output #mp-contribute-descΒ  { color: rgba(255,255,255,.85); margin-bottom: 18px; font-size: .96em; line-height: 1.6; }
.mw-parser-output #mp-contribute a {
Β  display: inline-block;
Β  background: #ffffff;
Β  color: #065f46 !important;
Β  border-radius: 22px;
Β  padding: 8px 20px;
Β  font-weight: 700;
Β  font-size: .9em;
Β  text-decoration: none;
Β  margin: 4px;
}
/* ══ RESPONSIVE ════════════════════════════════════════════════════════ */
@media screen and (max-width: 768px) {
Β  .mw-parser-output #mp-hero { padding: 30px 14px 24px; }
Β  .mw-parser-output #mp-hero-title { font-size: 1.7em; }
Β  .mw-parser-output #mp-upper { display: block; }
Β  .mw-parser-output #mp-left, .mw-parser-output #mp-right { width: 100%; min-width: unset; }
Β  .mw-parser-output .mp-cat-card { flex: 1 1 calc(50% - 12px); }
Β  .mw-parser-output .mp-portal-cell { flex: 1 1 calc(50% - 0px); }
}
}

Revision as of 21:43, 29 July 2026

/* Test: minimal safe CSS for TemplateStyles */
.mw-parser-output #mp-hero {
  background: #1e1b4b;
  color: #ffffff;
  padding: 40px 20px;
  text-align: center;
  border-radius: 8px;
  margin-bottom: 20px;
}
.mw-parser-output #mp-hero-title {
  font-size: 2em;
  font-weight: bold;
  color: #ffffff;
}