打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

目前wiki关闭了自行注册账号的功能,如需注册账号,请查阅Help:注册账号

模板:Fstpagetest styles:修订间差异

来自RIA | Wiki
ChenM0M留言 | 贡献
无编辑摘要
ChenM0M留言 | 贡献
无编辑摘要
 
(未显示同一用户的9个中间版本)
第1行: 第1行:
/* =========================
/* TemplateStyles for fstpagetest.wiki
   Fstpagetest_styles
   Design goals:
   - keep it portal-like, not "page inside page"
   - Portal-like wiki homepage, not a web app
   - consistent radius/shadow
   - Clear section separation (esp. mobile)
   - no input/checkbox/radio
   - No rounded corners anywhere
   - interactions: hover + :target
   - Avoid nested card-on-card framing
========================= */
*/


.fstp{
.fst-page {
   max-width: 1200px;
   width: 100%;
  margin: 0 auto;
   color: #221b50;
  padding: 0 14px 32px 14px;
   color: rgba(0,0,0,.84);
}
}


.fstp a{ color:#8f1f1f; font-weight:700; text-decoration:none; }
/* Hard rule: absolutely no rounded corners in this portal */
.fstp a:hover{ color:#b63737; text-decoration:underline; }
.fst-page,
.fst-page * {
  border-radius: 0 !important;
}
 
.fst-page * {
  box-sizing: border-box;
}
 
/* MediaWiki parser often injects <p>; neutralize default margins */
.fst-page p {
  margin: 0;
}
 
/* External-link icon removal (keep portal clean) */
.fst-page a.external {
  background: none !important;
  padding-right: 0 !important;
}
 
.fst-page a.external::after {
  display: none !important;
}
 
.fst-page .fst-muted {
  color: #5d5a7d;
  font-size: 0.95em;
}
 
.fst-page .fst-mt10 {
  margin-top: 10px;
}
 
.fst-page .fst-kicker {
  color: #4a4570;
  font-size: 0.95em;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
 
.fst-page .fst-zone {
  margin-top: 34px;
  padding-top: 22px;
  padding-bottom: 22px;
  border-top: 2px solid #e3e1ee;
}
 
.fst-page .fst-zone-hero {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
 
.fst-page .fst-zone-mid {
  background:
    repeating-linear-gradient(0deg, rgba(100, 211, 150, 0.045), rgba(100, 211, 150, 0.045) 1px, transparent 1px, transparent 26px),
    repeating-linear-gradient(90deg, rgba(100, 211, 150, 0.045), rgba(100, 211, 150, 0.045) 1px, transparent 1px, transparent 26px),
    #f9f8fb;
  padding: 18px 12px 18px 12px;
}
 
.fst-page .fst-zone-nav {
  background: #f9f8fb;
  padding-left: 12px;
  padding-right: 12px;
}
 
.fst-page .fst-zone-landmarks {
  background: #f9f8fb;
  padding-left: 12px;
  padding-right: 12px;
}
 
.fst-page .fst-zone-footer {
  border-top: 2px solid #e3e1ee;
  padding-top: 18px;
}
 
.fst-page .fst-section-h {
  font-size: 1.25em;
  font-weight: 900;
  margin: 0 0 12px 0;
  border-left: 10px solid #e3e1ee;
  padding-left: 10px;
}
 
.fst-page .fst-h-nav {
  border-left-color: #64d396;
}
 
.fst-page .fst-h-worlds {
  border-left-color: #8bccff;
}


/* --- baseline rhythm --- */
.fst-page .fst-h-track {
.fstp-sec{ margin-top:22px; }
  border-left-color: #64d396;
.fstp-sech{ margin-bottom:12px; }
}
.fstp-sectitle{ font-size:18px; font-weight:900; }
.fstp-secsub{ margin-top:4px; font-size:13px; color: rgba(0,0,0,.60); line-height:1.6; }


/* --- hero --- */
.fst-page .fst-h-news {
.fstp-hero{
   border-left-color: #8bccff;
   display:flex;
  gap:18px;
  align-items:stretch;
  padding:16px 0;
  border-bottom:1px solid rgba(0,0,0,.08);
}
}


.fstp-hero-left{ flex:1 1 auto; min-width:280px; }
.fst-page .fst-h-landmarks {
.fstp-hero-right{ flex:0 0 460px; display:flex; flex-direction:column; gap:8px; align-items:flex-end; justify-content:center; }
  border-left-color: #64d396;
}


.fstp-badge{
.fst-page .fst-h-footer {
   display:inline-block;
   border-left-color: #64d396;
  padding:4px 10px;
  border-radius:999px;
  background: rgba(182,55,55,.10);
  border:1px solid rgba(182,55,55,.20);
  color:#8f1f1f;
  font-weight:900;
  font-size:12px;
  letter-spacing:.2px;
}
}


.fstp-title{
/* Hero */
   margin:10px 0 6px 0;
 
   font-size:38px;
.fst-page .fst-hero-media {
   font-weight:900;
   position: absolute;
   letter-spacing:.3px;
  top: 0;
  right: 0;
  bottom: 0;
   left: 0;
   overflow: hidden;
   opacity: 0.22;
}
}


.fstp-lead{
.fst-page .fst-hero-media p {
  font-size:15px;
   margin: 0;
  line-height:1.75;
   color: rgba(0,0,0,.72);
}
}


/* KPI */
.fst-page .fst-hero-media a {
.fstp-kpis{
   display: block;
   display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}
}


.fstp-kpi{
.fst-page .fst-hero-media img {
   min-width: 170px;
   width: 100%;
  padding:10px 12px;
   height: auto;
  border-radius:12px;
   background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
}
}


.fstp-kpi-num{ font-size:16px; font-weight:900; }
.fst-page .fst-hero {
.fstp-kpi-text{ margin-top:2px; font-size:12px; color: rgba(0,0,0,.62); }
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #f9f8fb 0%, #eafff3 54%, #eef7ff 100%);
  border-top: 1px solid #e3e1ee;
  border-bottom: 1px solid #e3e1ee;
  padding: 18px 18px 16px 18px;
}


/* nav */
.fst-page .fst-title {
.fstp-nav{
   font-size: 2.2em;
   margin-top:12px;
   font-weight: 900;
   display:flex;
   line-height: 1.1;
   flex-wrap:wrap;
   margin-top: 6px;
   gap:10px;
}
}
.fstp-nav a{
 
   display:inline-block;
.fst-page .fst-sub {
  padding:6px 10px;
   margin-top: 8px;
   border-radius:999px;
   color: #3b365f;
  background:#fff;
   font-size: 1.05em;
  border:1px solid rgba(0,0,0,.10);
   line-height: 1.5;
  color: rgba(0,0,0,.72);
   font-weight:900;
   text-decoration:none;
}
}
.fstp-nav a:hover{
 
   border-color: rgba(182,55,55,.22);
.fst-page .fst-meta {
   background: rgba(182,55,55,.06);
   margin-top: 10px;
   color:#8f1f1f;
  color: #4a4570;
   text-decoration:none;
  font-size: 0.95em;
}
 
.fst-page .fst-jump {
   margin-top: 8px;
   color: #4a4570;
  font-size: 0.95em;
  line-height: 1.7;
}
 
.fst-page .fst-jump a {
   text-decoration: none;
  border-bottom: 1px dotted #8bccff;
}
 
.fst-page .fst-jump a:hover {
  border-bottom-style: solid;
}
}


.fstp-note{
/* Banner */
  margin-top:10px;
 
   padding:10px 12px;
.fst-page .fst-banner {
   border-radius:12px;
   padding: 10px 12px;
  background:#fbfbfd;
   border: 1px solid #e3e1ee;
   border:1px solid rgba(0,0,0,.06);
   border-left: 10px solid #64d396;
   color: rgba(0,0,0,.66);
   background: #ffffff;
  font-size:13px;
  line-height:1.65;
}
}


.fstp-hero-image{
.fst-page .fst-banner-tag {
   border-radius:12px;
  display: inline-block;
   box-shadow: 0 10px 26px rgba(0,0,0,.10);
  padding: 3px 10px;
  margin-right: 10px;
   border: 1px solid #64d396;
  background: #f9f8fb;
  font-weight: 900;
   font-size: 0.92em;
  color: #221b50;
}
}
.fstp-caption{
 
  font-size:12px;
.fst-page .fst-banner-text {
   color: rgba(0,0,0,.55);
   color: #3b365f;
}
}


/* --- grids/cards --- */
/* Layout */
.fstp-grid4{
 
   display:flex;
.fst-page .fst-row {
   flex-wrap:wrap;
   display: flex;
   gap:12px;
   flex-wrap: wrap;
   margin: -10px;
}
}


.fstp-card{
.fst-page .fst-col {
   flex: 1 1 240px;
  margin: 10px;
   max-width: 320px;
   flex: 1 1 420px;
  border-radius:12px;
   min-width: 320px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  padding:12px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}
}


.fstp-card:hover{
/* Quick nav */
   border-color: rgba(182,55,55,.18);
 
   box-shadow: 0 10px 22px rgba(0,0,0,.08);
.fst-page .fst-navrow {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -6px;
   padding-left: 12px;
   border-left: 10px solid #e3e1ee;
}
}


.fstp-cardtop{
.fst-page .fst-navrow + .fst-navrow {
   display:flex;
   margin-top: 12px;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
}


.fstp-tag{
.fst-page .fst-navrow-1 {
  display:inline-block;
   border-left-color: #64d396;
  padding:4px 8px;
  font-size:12px;
   font-weight:900;
  border-radius:999px;
  background:rgba(182,55,55,.10);
  border:1px solid rgba(182,55,55,.18);
  color:#8f1f1f;
}
}


.fstp-tag-warn{
.fst-page .fst-navrow-2 {
  background:rgba(255,153,0,.14);
   border-left-color: #8bccff;
   border-color: rgba(255,153,0,.22);
  color: rgba(110,70,0,.95);
}
}


.fstp-tag-cool{
.fst-page .fst-navtile {
   background:rgba(80,120,255,.12);
   margin: 6px;
   border-color: rgba(80,120,255,.22);
   flex: 1 1 calc(33.333% - 12px);
   color: rgba(20,50,140,.95);
   min-width: 150px;
}
}


.fstp-chip{
.fst-page .fst-navtile a {
   display:inline-block;
   display: block;
   padding:4px 8px;
   padding: 10px 8px;
   font-size:12px;
   border: 0;
   font-weight:900;
   background: transparent;
   border-radius:999px;
   text-decoration: none;
   background:#f6f7fa;
   text-align: center;
   border:1px solid rgba(0,0,0,.06);
   color: #221b50;
   color: rgba(0,0,0,.68);
   transition: background 120ms ease;
}
}


.fstp-cardtitle{
.fst-page .fst-navtile a:hover {
  margin-top:8px;
   background: #ffffff;
   font-size:16px;
  font-weight:900;
  line-height:1.25;
}
}


.fstp-carddesc{
/* Suppress default external-link icon inside portal tiles */
  margin-top:6px;
.fst-page .fst-navtile a.external {
  font-size:13px;
   background: none !important;
  color: rgba(0,0,0,.72);
   padding-right: 0 !important;
   line-height:1.6;
   /* two-line clamp fallback: keep it short even without clamp support */
  max-height: 3.2em;
  overflow:hidden;
}
}


.fstp-cardlink{
.fst-page .fst-navtile a.external:hover {
  margin-top:8px;
   background: #ffffff !important;
   font-weight:900;
}
}


/* --- list (start) --- */
.fst-page .fst-navicon {
.fstp-list{
  display: inline-block;
   border:1px solid rgba(0,0,0,.10);
  width: 56px;
   border-radius:12px;
  height: 56px;
   background:#fff;
  line-height: 54px;
   overflow:hidden;
   border: 2px solid #e3e1ee;
  background: transparent;
  font-weight: 900;
   font-size: 1.05em;
   letter-spacing: 0.02em;
   color: #221b50;
}
}


.fstp-item{
.fst-page .fst-navrow-1 .fst-navicon {
   display:flex;
   border-color: #64d396;
  gap:12px;
   color: #221b50;
   padding:12px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
}
.fstp-item:last-child{ border-bottom:none; }


.fstp-ico{
.fst-page .fst-navrow-2 .fst-navicon {
  flex:0 0 74px;
   border-color: #8bccff;
  display:flex;
   color: #221b50;
  align-items:center;
  justify-content:center;
   border-radius:12px;
   background:#f3f5f8;
  border:1px solid rgba(0,0,0,.06);
}
}


.fstp-itemtitle{ font-size:16px; font-weight:900; margin-bottom:4px; }
.fst-page .fst-navtitle {
.fstp-itemtext{ font-size:14px; color: rgba(0,0,0,.72); line-height:1.65; }
  display: block;
.fstp-itemgo{ margin-top:6px; font-weight:900; }
  font-weight: 900;
  font-size: 1.02em;
  margin-top: 10px;
}


.fstp-callout{
.fst-page .fst-navsub {
   margin-top:12px;
   display: block;
   padding:10px 12px;
   margin-top: 6px;
  border-radius:12px;
   color: #5d5a7d;
   background:#f6f7fa;
   font-size: 0.9em;
   border:1px solid rgba(0,0,0,.06);
  color: rgba(0,0,0,.72);
  line-height:1.7;
}
}


/* --- tabs (target on panel itself) --- */
.fst-page .fst-navnote {
.fstp-tabs{
  margin-top: 12px;
   border:1px solid rgba(0,0,0,.10);
   padding-left: 12px;
   border-radius:12px;
   border-left: 10px solid #e3e1ee;
   background:#fff;
   color: #4a4570;
   overflow:hidden;
   line-height: 1.6;
}
}


.fstp-tabbar{
/* Worlds */
  padding:10px;
 
  border-bottom:1px solid rgba(0,0,0,.08);
.fst-page .fst-world-grid {
  background:#fbfbfd;
   display: flex;
   display:flex;
   flex-wrap: wrap;
   gap:8px;
   margin: -8px;
   flex-wrap:wrap;
}
}


.fstp-tabbar a{
.fst-page .fst-world {
   display:inline-block;
   margin: 8px;
   padding:7px 12px;
   padding: 8px 0 12px 0;
   border-radius:999px;
   border-bottom: 2px solid #e3e1ee;
  border:1px solid rgba(0,0,0,.10);
   background: transparent;
   background:#fff;
   flex: 1 1 calc(50% - 16px);
  font-weight:900;
   min-width: 240px;
   color: rgba(0,0,0,.72);
   text-decoration:none;
}
}
.fstp-tabbar a:hover{
 
   border-color: rgba(182,55,55,.22);
.fst-page .fst-world-wide {
  color:#8f1f1f;
   flex-basis: 100%;
}
}


/* panels */
.fst-page .fst-world-laputa {
.fstp-panel{
   border-bottom-color: #64d396;
   display:none;
  padding:12px;
}
}


.fstp-panel-default{
.fst-page .fst-world-eden {
   display:block;
   border-bottom-color: #8bccff;
}
}


/* when any panel is targeted, hide default */
.fst-page .fst-world-sat {
#tab-eden:target ~ .fstp-panel-default,
  border-bottom-color: #e3e1ee;
#tab-laputa:target ~ .fstp-panel-default,
#tab-faq:target ~ .fstp-panel-default{
  display:none;
}
}


/* show targeted panel */
.fst-page .fst-world-head {
#tab-eden:target,
  display: flex;
#tab-laputa:target,
  flex-wrap: wrap;
#tab-faq:target{
   align-items: center;
   display:block;
}
}


/* panel content style */
.fst-page .fst-world-icon {
.fstp-ptitle{ font-weight:900; font-size:16px; margin-bottom:6px; }
  display: inline-block;
.fstp-ptext{ color: rgba(0,0,0,.72); line-height:1.7; font-size:14px; }
  width: 58px;
.fstp-plink{ margin-top:8px; font-weight:900; }
  height: 58px;
  line-height: 56px;
  text-align: center;
  border: 2px solid #e3e1ee;
  background: transparent;
  margin-right: 12px;
  font-weight: 900;
  font-size: 1.05em;
  color: #221b50;
  transition: border-color 120ms ease;
}


.fstp-pills{
.fst-page .fst-world-icon-laputa {
   margin-top:10px;
   border-color: #64d396;
  display:flex;
   color: #221b50;
  flex-wrap:wrap;
   gap:10px;
}
}
.fstp-pill{
 
  display:inline-block;
.fst-page .fst-world-icon-eden {
  padding:7px 10px;
   border-color: #8bccff;
   border-radius:999px;
   color: #221b50;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  font-weight:900;
   color: rgba(0,0,0,.70);
  font-size:13px;
}
}


.fstp-tabsnote{
.fst-page .fst-world-icon-sat {
   padding:0 12px 12px 12px;
   border-color: #e3e1ee;
   color: rgba(0,0,0,.60);
   color: #221b50;
  font-size:13px;
  line-height:1.6;
}
}


/* --- FAQ accordion (target on item itself) --- */
.fst-page .fst-world-name {
.fstp-acc{
   font-weight: 900;
   border:1px solid rgba(0,0,0,.10);
   font-size: 1.08em;
   border-radius:12px;
   margin-right: 10px;
   background:#fff;
  overflow:hidden;
}
}


.fstp-q{
.fst-page .fst-world-badge {
   border-bottom:1px solid rgba(0,0,0,.08);
   display: inline-block;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 0.88em;
  font-weight: 900;
  color: #4a4570;
}
}
.fstp-q:last-child{ border-bottom:none; }


.fstp-qhead{
.fst-page .fst-world-desc {
   padding:12px;
   margin-top: 8px;
   display:flex;
   color: #4a4570;
   align-items:center;
   font-size: 0.95em;
   justify-content:space-between;
   line-height: 1.6;
  gap:10px;
}
}


.fstp-qt{ font-weight:900; }
.fst-page .fst-world-links {
.fstp-qctl{
   margin-top: 10px;
   padding:6px 10px;
   padding-top: 10px;
   border-radius:999px;
   border-top: 1px solid #e3e1ee;
  background:#f6f7fa;
   color: #4a4570;
   border:1px solid rgba(0,0,0,.06);
   line-height: 1.6;
  font-weight:900;
   color: rgba(0,0,0,.68);
   font-size:12px;
}
}


/* collapsed by default */
.fst-page .fst-world-note {
.fstp-qbody{
   margin-top: 10px;
  padding:0 12px;
  max-height:0;
  opacity:0;
  overflow:hidden;
  transition: opacity .18s ease, max-height .18s ease;
  color: rgba(0,0,0,.72);
   line-height:1.7;
}
}


/* expand when item itself is target */
/* Tabs */
.fstp-q:target .fstp-qbody{
 
   max-height: 520px;
.fst-page .fst-tabs {
  opacity:1;
   background: transparent;
   padding: 0 12px 12px 12px;
   padding: 0;
}
}


.fstp-mini{
.fst-page .fst-tab-anchor {
   margin:10px 0;
   display: block;
   padding:10px 12px;
   height: 0;
  border-radius:12px;
   overflow: hidden;
   background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
}
}


/* --- timeline --- */
.fst-page .fst-tabbar {
.fstp-tl{
   margin-bottom: 10px;
   border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  background:#fff;
  padding: 12px;
}
}


.fstp-tli{
.fst-page .fst-tabbar p {
   display:flex;
   display: inline;
  gap:12px;
   margin: 0;
   padding: 10px 0;
}
}
.fstp-tli:not(:last-child){
 
   border-bottom:1px dashed rgba(0,0,0,.14);
.fst-page .fst-tabbar br {
   display: none;
}
}


.fstp-tldot{
.fst-page .fst-tabbar a {
   flex:0 0 10px;
   display: inline-block;
   width:10px;
   padding: 6px 10px;
   height:10px;
   margin: 0 10px 8px 0;
   border-radius:999px;
   border: 1px solid transparent;
   background:#b63737;
   background: transparent;
   margin-top:7px;
   text-decoration: none;
   box-shadow: 0 0 0 4px rgba(182,55,55,.10);
   font-weight: 900;
  color: #221b50;
  transition: background 120ms ease, border-color 120ms ease;
}
}


.fstp-tltime{ font-size:12px; color: rgba(0,0,0,.55); font-weight:900; }
.fst-page .fst-tabbar a:hover {
.fstp-tltitle{ font-weight:900; margin-top:2px; }
  background: #ffffff;
.fstp-tltext{ margin-top:4px; color: rgba(0,0,0,.72); line-height:1.65; font-size:14px; }
  border-color: #c9d2dc;
}


/* --- links --- */
.fst-page .fst-tabpanel {
.fstp-links{
   display: none;
   display:flex;
   padding: 10px 0 12px 12px;
   flex-wrap:wrap;
   border-left: 6px solid #e3e1ee;
   gap:10px;
}
}


.fstp-link{
.fst-page .fst-tabpanel-beginner {
   flex: 1 1 220px;
   display: block;
  padding:10px 12px;
   border-left-color: #64d396;
   border-radius:12px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  font-weight:900;
}
}


.fstp-link:hover{
.fst-page .fst-tabpanel-intermediate {
   border-color: rgba(182,55,55,.18);
   border-left-color: #64d396;
  background:#fbfbfd;
}
}


/* footer */
.fst-page .fst-tabpanel-advanced {
.fstp-foot{
   border-left-color: #64d396;
   margin-top:12px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
}
.fstp-foot-h{
 
   padding:12px;
.fst-page .fst-panel-h {
   background:#fbfbfd;
   font-weight: 900;
   border-bottom:1px solid rgba(0,0,0,.08);
   font-size: 1.05em;
  font-weight:900;
   margin: 0 0 6px 0;
}
}
.fstp-foot-c{
 
  padding:12px;
.fst-page .fst-panel-p {
   color: rgba(0,0,0,.72);
   color: #4a4570;
   line-height:1.75;
   line-height: 1.6;
}
}


/* responsive */
.fst-page .fst-panel-links {
@media (max-width: 1024px){
  margin-top: 8px;
   .fstp-hero-right{ display:none; }
  color: #4a4570;
   line-height: 1.6;
}
}
@media (max-width: 640px){
 
   .fstp-title{ font-size:30px; }
/* Default highlighted tab */
   .fstp-kpi{ min-width: 150px; }
.fst-page .fst-tabbar a[href="#tab-beginner"] {
  background: #ffffff;
  border-color: #64d396;
}
 
/* Target logic: show panel + highlight tab */
.fst-page #tab-intermediate:target ~ .fst-tabpanels .fst-tabpanel-beginner,
.fst-page #tab-advanced:target ~ .fst-tabpanels .fst-tabpanel-beginner {
  display: none;
}
 
.fst-page #tab-intermediate:target ~ .fst-tabpanels .fst-tabpanel-intermediate {
  display: block;
}
 
.fst-page #tab-advanced:target ~ .fst-tabpanels .fst-tabpanel-advanced {
  display: block;
}
 
.fst-page #tab-intermediate:target ~ .fst-tabbar a[href="#tab-beginner"],
.fst-page #tab-advanced:target ~ .fst-tabbar a[href="#tab-beginner"] {
  background: transparent;
  border-color: transparent;
}
 
.fst-page #tab-intermediate:target ~ .fst-tabbar a[href="#tab-intermediate"] {
  background: #ffffff;
  border-color: #64d396;
}
 
.fst-page #tab-advanced:target ~ .fst-tabbar a[href="#tab-advanced"] {
  background: #ffffff;
  border-color: #64d396;
}
 
/* Timeline + topics */
 
.fst-page .fst-timeline {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e3e1ee;
  border-left: 2px solid #e3e1ee;
  padding-left: 12px;
}
 
.fst-page .fst-timeline-h {
  font-weight: 900;
  margin: 0 0 8px 0;
}
 
.fst-page .fst-timeline-item {
  margin-top: 6px;
}
 
.fst-page .fst-timeline-date {
  display: inline-block;
  min-width: 74px;
  font-weight: 900;
  color: #221b50;
}
 
.fst-page .fst-timeline-text {
  color: #4a4570;
}
 
.fst-page .fst-topics {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e3e1ee;
}
 
.fst-page .fst-topics-h {
  font-weight: 900;
  margin: 0 0 6px 0;
}
 
.fst-page .fst-topics-line {
  color: #4a4570;
  line-height: 1.7;
}
 
/* News */
 
.fst-page .fst-news {
  background: transparent;
  padding: 0;
}
 
.fst-page .fst-news-item {
  padding: 10px 0 10px 12px;
  border-left: 6px solid #8bccff;
  border-bottom: 0;
}
 
.fst-page .fst-news-item + .fst-news-item {
  margin-top: 10px;
}
 
.fst-page .fst-news-item:last-child {
  border-bottom: 0;
}
 
.fst-page .fst-news-title {
  font-weight: 900;
  margin: 0 0 4px 0;
}
 
/* Landmarks table (template output) */
 
.fst-page .fst-zone-landmarks table {
  width: 100%;
  background: #ffffff !important;
}
 
.fst-page .fst-zone-landmarks th,
.fst-page .fst-zone-landmarks td {
  border: 1px solid #e3e1ee !important;
  padding: 6px 8px;
  background: #ffffff !important;
  color: #221b50 !important;
}
 
.fst-page .fst-zone-landmarks th {
  background: #f9f8fb !important;
}
 
.fst-page .fst-zone-landmarks tr:nth-child(even) td {
  background: #f9f8fb !important;
}
 
/* Footer */
 
.fst-page .fst-footer-links {
  margin-top: 10px;
  color: #4a4570;
  line-height: 1.7;
}
 
/* Keep navbox/table styling tame inside this portal */
.fst-page .navbox,
.fst-page table {
  box-shadow: none;
}
 
@media (max-width: 720px) {
   .fst-page .fst-zone-mid {
    padding-left: 10px;
    padding-right: 10px;
  }
 
  .fst-page .fst-col {
    min-width: 0;
  }
 
  .fst-page .fst-navtile {
    flex-basis: calc(50% - 12px);
    min-width: 0;
  }
 
   .fst-page .fst-world {
    min-width: 0;
    flex-basis: 100%;
  }
}
}

2026年2月14日 (六) 17:24的最新版本

/* TemplateStyles for fstpagetest.wiki
   Design goals:
   - Portal-like wiki homepage, not a web app
   - Clear section separation (esp. mobile)
   - No rounded corners anywhere
   - Avoid nested card-on-card framing
*/

.fst-page {
  width: 100%;
  color: #221b50;
}

/* Hard rule: absolutely no rounded corners in this portal */
.fst-page,
.fst-page * {
  border-radius: 0 !important;
}

.fst-page * {
  box-sizing: border-box;
}

/* MediaWiki parser often injects <p>; neutralize default margins */
.fst-page p {
  margin: 0;
}

/* External-link icon removal (keep portal clean) */
.fst-page a.external {
  background: none !important;
  padding-right: 0 !important;
}

.fst-page a.external::after {
  display: none !important;
}

.fst-page .fst-muted {
  color: #5d5a7d;
  font-size: 0.95em;
}

.fst-page .fst-mt10 {
  margin-top: 10px;
}

.fst-page .fst-kicker {
  color: #4a4570;
  font-size: 0.95em;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.fst-page .fst-zone {
  margin-top: 34px;
  padding-top: 22px;
  padding-bottom: 22px;
  border-top: 2px solid #e3e1ee;
}

.fst-page .fst-zone-hero {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.fst-page .fst-zone-mid {
  background:
    repeating-linear-gradient(0deg, rgba(100, 211, 150, 0.045), rgba(100, 211, 150, 0.045) 1px, transparent 1px, transparent 26px),
    repeating-linear-gradient(90deg, rgba(100, 211, 150, 0.045), rgba(100, 211, 150, 0.045) 1px, transparent 1px, transparent 26px),
    #f9f8fb;
  padding: 18px 12px 18px 12px;
}

.fst-page .fst-zone-nav {
  background: #f9f8fb;
  padding-left: 12px;
  padding-right: 12px;
}

.fst-page .fst-zone-landmarks {
  background: #f9f8fb;
  padding-left: 12px;
  padding-right: 12px;
}

.fst-page .fst-zone-footer {
  border-top: 2px solid #e3e1ee;
  padding-top: 18px;
}

.fst-page .fst-section-h {
  font-size: 1.25em;
  font-weight: 900;
  margin: 0 0 12px 0;
  border-left: 10px solid #e3e1ee;
  padding-left: 10px;
}

.fst-page .fst-h-nav {
  border-left-color: #64d396;
}

.fst-page .fst-h-worlds {
  border-left-color: #8bccff;
}

.fst-page .fst-h-track {
  border-left-color: #64d396;
}

.fst-page .fst-h-news {
  border-left-color: #8bccff;
}

.fst-page .fst-h-landmarks {
  border-left-color: #64d396;
}

.fst-page .fst-h-footer {
  border-left-color: #64d396;
}

/* Hero */

.fst-page .fst-hero-media {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  opacity: 0.22;
}

.fst-page .fst-hero-media p {
  margin: 0;
}

.fst-page .fst-hero-media a {
  display: block;
}

.fst-page .fst-hero-media img {
  width: 100%;
  height: auto;
}

.fst-page .fst-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #f9f8fb 0%, #eafff3 54%, #eef7ff 100%);
  border-top: 1px solid #e3e1ee;
  border-bottom: 1px solid #e3e1ee;
  padding: 18px 18px 16px 18px;
}

.fst-page .fst-title {
  font-size: 2.2em;
  font-weight: 900;
  line-height: 1.1;
  margin-top: 6px;
}

.fst-page .fst-sub {
  margin-top: 8px;
  color: #3b365f;
  font-size: 1.05em;
  line-height: 1.5;
}

.fst-page .fst-meta {
  margin-top: 10px;
  color: #4a4570;
  font-size: 0.95em;
}

.fst-page .fst-jump {
  margin-top: 8px;
  color: #4a4570;
  font-size: 0.95em;
  line-height: 1.7;
}

.fst-page .fst-jump a {
  text-decoration: none;
  border-bottom: 1px dotted #8bccff;
}

.fst-page .fst-jump a:hover {
  border-bottom-style: solid;
}

/* Banner */

.fst-page .fst-banner {
  padding: 10px 12px;
  border: 1px solid #e3e1ee;
  border-left: 10px solid #64d396;
  background: #ffffff;
}

.fst-page .fst-banner-tag {
  display: inline-block;
  padding: 3px 10px;
  margin-right: 10px;
  border: 1px solid #64d396;
  background: #f9f8fb;
  font-weight: 900;
  font-size: 0.92em;
  color: #221b50;
}

.fst-page .fst-banner-text {
  color: #3b365f;
}

/* Layout */

.fst-page .fst-row {
  display: flex;
  flex-wrap: wrap;
  margin: -10px;
}

.fst-page .fst-col {
  margin: 10px;
  flex: 1 1 420px;
  min-width: 320px;
}

/* Quick nav */

.fst-page .fst-navrow {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -6px;
  padding-left: 12px;
  border-left: 10px solid #e3e1ee;
}

.fst-page .fst-navrow + .fst-navrow {
  margin-top: 12px;
}

.fst-page .fst-navrow-1 {
  border-left-color: #64d396;
}

.fst-page .fst-navrow-2 {
  border-left-color: #8bccff;
}

.fst-page .fst-navtile {
  margin: 6px;
  flex: 1 1 calc(33.333% - 12px);
  min-width: 150px;
}

.fst-page .fst-navtile a {
  display: block;
  padding: 10px 8px;
  border: 0;
  background: transparent;
  text-decoration: none;
  text-align: center;
  color: #221b50;
  transition: background 120ms ease;
}

.fst-page .fst-navtile a:hover {
  background: #ffffff;
}

/* Suppress default external-link icon inside portal tiles */
.fst-page .fst-navtile a.external {
  background: none !important;
  padding-right: 0 !important;
}

.fst-page .fst-navtile a.external:hover {
  background: #ffffff !important;
}

.fst-page .fst-navicon {
  display: inline-block;
  width: 56px;
  height: 56px;
  line-height: 54px;
  border: 2px solid #e3e1ee;
  background: transparent;
  font-weight: 900;
  font-size: 1.05em;
  letter-spacing: 0.02em;
  color: #221b50;
}

.fst-page .fst-navrow-1 .fst-navicon {
  border-color: #64d396;
  color: #221b50;
}

.fst-page .fst-navrow-2 .fst-navicon {
  border-color: #8bccff;
  color: #221b50;
}

.fst-page .fst-navtitle {
  display: block;
  font-weight: 900;
  font-size: 1.02em;
  margin-top: 10px;
}

.fst-page .fst-navsub {
  display: block;
  margin-top: 6px;
  color: #5d5a7d;
  font-size: 0.9em;
}

.fst-page .fst-navnote {
  margin-top: 12px;
  padding-left: 12px;
  border-left: 10px solid #e3e1ee;
  color: #4a4570;
  line-height: 1.6;
}

/* Worlds */

.fst-page .fst-world-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -8px;
}

.fst-page .fst-world {
  margin: 8px;
  padding: 8px 0 12px 0;
  border-bottom: 2px solid #e3e1ee;
  background: transparent;
  flex: 1 1 calc(50% - 16px);
  min-width: 240px;
}

.fst-page .fst-world-wide {
  flex-basis: 100%;
}

.fst-page .fst-world-laputa {
  border-bottom-color: #64d396;
}

.fst-page .fst-world-eden {
  border-bottom-color: #8bccff;
}

.fst-page .fst-world-sat {
  border-bottom-color: #e3e1ee;
}

.fst-page .fst-world-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.fst-page .fst-world-icon {
  display: inline-block;
  width: 58px;
  height: 58px;
  line-height: 56px;
  text-align: center;
  border: 2px solid #e3e1ee;
  background: transparent;
  margin-right: 12px;
  font-weight: 900;
  font-size: 1.05em;
  color: #221b50;
  transition: border-color 120ms ease;
}

.fst-page .fst-world-icon-laputa {
  border-color: #64d396;
  color: #221b50;
}

.fst-page .fst-world-icon-eden {
  border-color: #8bccff;
  color: #221b50;
}

.fst-page .fst-world-icon-sat {
  border-color: #e3e1ee;
  color: #221b50;
}

.fst-page .fst-world-name {
  font-weight: 900;
  font-size: 1.08em;
  margin-right: 10px;
}

.fst-page .fst-world-badge {
  display: inline-block;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 0.88em;
  font-weight: 900;
  color: #4a4570;
}

.fst-page .fst-world-desc {
  margin-top: 8px;
  color: #4a4570;
  font-size: 0.95em;
  line-height: 1.6;
}

.fst-page .fst-world-links {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e3e1ee;
  color: #4a4570;
  line-height: 1.6;
}

.fst-page .fst-world-note {
  margin-top: 10px;
}

/* Tabs */

.fst-page .fst-tabs {
  background: transparent;
  padding: 0;
}

.fst-page .fst-tab-anchor {
  display: block;
  height: 0;
  overflow: hidden;
}

.fst-page .fst-tabbar {
  margin-bottom: 10px;
}

.fst-page .fst-tabbar p {
  display: inline;
  margin: 0;
}

.fst-page .fst-tabbar br {
  display: none;
}

.fst-page .fst-tabbar a {
  display: inline-block;
  padding: 6px 10px;
  margin: 0 10px 8px 0;
  border: 1px solid transparent;
  background: transparent;
  text-decoration: none;
  font-weight: 900;
  color: #221b50;
  transition: background 120ms ease, border-color 120ms ease;
}

.fst-page .fst-tabbar a:hover {
  background: #ffffff;
  border-color: #c9d2dc;
}

.fst-page .fst-tabpanel {
  display: none;
  padding: 10px 0 12px 12px;
  border-left: 6px solid #e3e1ee;
}

.fst-page .fst-tabpanel-beginner {
  display: block;
  border-left-color: #64d396;
}

.fst-page .fst-tabpanel-intermediate {
  border-left-color: #64d396;
}

.fst-page .fst-tabpanel-advanced {
  border-left-color: #64d396;
}

.fst-page .fst-panel-h {
  font-weight: 900;
  font-size: 1.05em;
  margin: 0 0 6px 0;
}

.fst-page .fst-panel-p {
  color: #4a4570;
  line-height: 1.6;
}

.fst-page .fst-panel-links {
  margin-top: 8px;
  color: #4a4570;
  line-height: 1.6;
}

/* Default highlighted tab */
.fst-page .fst-tabbar a[href="#tab-beginner"] {
  background: #ffffff;
  border-color: #64d396;
}

/* Target logic: show panel + highlight tab */
.fst-page #tab-intermediate:target ~ .fst-tabpanels .fst-tabpanel-beginner,
.fst-page #tab-advanced:target ~ .fst-tabpanels .fst-tabpanel-beginner {
  display: none;
}

.fst-page #tab-intermediate:target ~ .fst-tabpanels .fst-tabpanel-intermediate {
  display: block;
}

.fst-page #tab-advanced:target ~ .fst-tabpanels .fst-tabpanel-advanced {
  display: block;
}

.fst-page #tab-intermediate:target ~ .fst-tabbar a[href="#tab-beginner"],
.fst-page #tab-advanced:target ~ .fst-tabbar a[href="#tab-beginner"] {
  background: transparent;
  border-color: transparent;
}

.fst-page #tab-intermediate:target ~ .fst-tabbar a[href="#tab-intermediate"] {
  background: #ffffff;
  border-color: #64d396;
}

.fst-page #tab-advanced:target ~ .fst-tabbar a[href="#tab-advanced"] {
  background: #ffffff;
  border-color: #64d396;
}

/* Timeline + topics */

.fst-page .fst-timeline {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e3e1ee;
  border-left: 2px solid #e3e1ee;
  padding-left: 12px;
}

.fst-page .fst-timeline-h {
  font-weight: 900;
  margin: 0 0 8px 0;
}

.fst-page .fst-timeline-item {
  margin-top: 6px;
}

.fst-page .fst-timeline-date {
  display: inline-block;
  min-width: 74px;
  font-weight: 900;
  color: #221b50;
}

.fst-page .fst-timeline-text {
  color: #4a4570;
}

.fst-page .fst-topics {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e3e1ee;
}

.fst-page .fst-topics-h {
  font-weight: 900;
  margin: 0 0 6px 0;
}

.fst-page .fst-topics-line {
  color: #4a4570;
  line-height: 1.7;
}

/* News */

.fst-page .fst-news {
  background: transparent;
  padding: 0;
}

.fst-page .fst-news-item {
  padding: 10px 0 10px 12px;
  border-left: 6px solid #8bccff;
  border-bottom: 0;
}

.fst-page .fst-news-item + .fst-news-item {
  margin-top: 10px;
}

.fst-page .fst-news-item:last-child {
  border-bottom: 0;
}

.fst-page .fst-news-title {
  font-weight: 900;
  margin: 0 0 4px 0;
}

/* Landmarks table (template output) */

.fst-page .fst-zone-landmarks table {
  width: 100%;
  background: #ffffff !important;
}

.fst-page .fst-zone-landmarks th,
.fst-page .fst-zone-landmarks td {
  border: 1px solid #e3e1ee !important;
  padding: 6px 8px;
  background: #ffffff !important;
  color: #221b50 !important;
}

.fst-page .fst-zone-landmarks th {
  background: #f9f8fb !important;
}

.fst-page .fst-zone-landmarks tr:nth-child(even) td {
  background: #f9f8fb !important;
}

/* Footer */

.fst-page .fst-footer-links {
  margin-top: 10px;
  color: #4a4570;
  line-height: 1.7;
}

/* Keep navbox/table styling tame inside this portal */
.fst-page .navbox,
.fst-page table {
  box-shadow: none;
}

@media (max-width: 720px) {
  .fst-page .fst-zone-mid {
    padding-left: 10px;
    padding-right: 10px;
  }

  .fst-page .fst-col {
    min-width: 0;
  }

  .fst-page .fst-navtile {
    flex-basis: calc(50% - 12px);
    min-width: 0;
  }

  .fst-page .fst-world {
    min-width: 0;
    flex-basis: 100%;
  }
}