模板:Fstpagetest styles
来自RIA | Wiki
更多操作
/* =========================
Fstpagetest_styles
- keep it portal-like, not "page inside page"
- consistent radius/shadow
- no input/checkbox/radio
- interactions: hover + :target
========================= */
.fstp{
max-width: 1200px;
margin: 0 auto;
padding: 0 14px 32px 14px;
color: rgba(0,0,0,.84);
}
.fstp a{ color:#8f1f1f; font-weight:700; text-decoration:none; }
.fstp a:hover{ color:#b63737; text-decoration:underline; }
/* --- baseline rhythm --- */
.fstp-sec{ margin-top:22px; }
.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 --- */
.fstp-hero{
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; }
.fstp-hero-right{ flex:0 0 460px; display:flex; flex-direction:column; gap:8px; align-items:flex-end; justify-content:center; }
.fstp-badge{
display:inline-block;
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{
margin:10px 0 6px 0;
font-size:38px;
font-weight:900;
letter-spacing:.3px;
}
.fstp-lead{
font-size:15px;
line-height:1.75;
color: rgba(0,0,0,.72);
}
/* KPI */
.fstp-kpis{
display:flex;
gap:10px;
flex-wrap:wrap;
margin-top:12px;
}
.fstp-kpi{
min-width: 170px;
padding:10px 12px;
border-radius:12px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
}
.fstp-kpi-num{ font-size:16px; font-weight:900; }
.fstp-kpi-text{ margin-top:2px; font-size:12px; color: rgba(0,0,0,.62); }
/* nav */
.fstp-nav{
margin-top:12px;
display:flex;
flex-wrap:wrap;
gap:10px;
}
.fstp-nav a{
display:inline-block;
padding:6px 10px;
border-radius:999px;
background:#fff;
border:1px solid rgba(0,0,0,.10);
color: rgba(0,0,0,.72);
font-weight:900;
text-decoration:none;
}
.fstp-nav a:hover{
border-color: rgba(182,55,55,.22);
background: rgba(182,55,55,.06);
color:#8f1f1f;
text-decoration:none;
}
.fstp-note{
margin-top:10px;
padding:10px 12px;
border-radius:12px;
background:#fbfbfd;
border:1px solid rgba(0,0,0,.06);
color: rgba(0,0,0,.66);
font-size:13px;
line-height:1.65;
}
.fstp-hero-image{
border-radius:12px;
box-shadow: 0 10px 26px rgba(0,0,0,.10);
}
.fstp-caption{
font-size:12px;
color: rgba(0,0,0,.55);
}
/* --- grids/cards --- */
.fstp-grid4{
display:flex;
flex-wrap:wrap;
gap:12px;
}
.fstp-card{
flex: 1 1 240px;
max-width: 320px;
border-radius:12px;
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{
border-color: rgba(182,55,55,.18);
box-shadow: 0 10px 22px rgba(0,0,0,.08);
}
.fstp-cardtop{
display:flex;
gap:8px;
align-items:center;
flex-wrap:wrap;
}
.fstp-tag{
display:inline-block;
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{
background:rgba(255,153,0,.14);
border-color: rgba(255,153,0,.22);
color: rgba(110,70,0,.95);
}
.fstp-tag-cool{
background:rgba(80,120,255,.12);
border-color: rgba(80,120,255,.22);
color: rgba(20,50,140,.95);
}
.fstp-chip{
display:inline-block;
padding:4px 8px;
font-size:12px;
font-weight:900;
border-radius:999px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
color: rgba(0,0,0,.68);
}
.fstp-cardtitle{
margin-top:8px;
font-size:16px;
font-weight:900;
line-height:1.25;
}
.fstp-carddesc{
margin-top:6px;
font-size:13px;
color: rgba(0,0,0,.72);
line-height:1.6;
/* two-line clamp fallback: keep it short even without clamp support */
max-height: 3.2em;
overflow:hidden;
}
.fstp-cardlink{
margin-top:8px;
font-weight:900;
}
/* --- list (start) --- */
.fstp-list{
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
background:#fff;
overflow:hidden;
}
.fstp-item{
display:flex;
gap:12px;
padding:12px;
border-bottom:1px solid rgba(0,0,0,.08);
}
.fstp-item:last-child{ border-bottom:none; }
.fstp-ico{
flex:0 0 74px;
display:flex;
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; }
.fstp-itemtext{ font-size:14px; color: rgba(0,0,0,.72); line-height:1.65; }
.fstp-itemgo{ margin-top:6px; font-weight:900; }
.fstp-callout{
margin-top:12px;
padding:10px 12px;
border-radius:12px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
color: rgba(0,0,0,.72);
line-height:1.7;
}
/* --- tabs (target on panel itself) --- */
.fstp-tabs{
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
background:#fff;
overflow:hidden;
}
.fstp-tabbar{
padding:10px;
border-bottom:1px solid rgba(0,0,0,.08);
background:#fbfbfd;
display:flex;
gap:8px;
flex-wrap:wrap;
}
.fstp-tabbar a{
display:inline-block;
padding:7px 12px;
border-radius:999px;
border:1px solid rgba(0,0,0,.10);
background:#fff;
font-weight:900;
color: rgba(0,0,0,.72);
text-decoration:none;
}
.fstp-tabbar a:hover{
border-color: rgba(182,55,55,.22);
color:#8f1f1f;
}
/* panels */
.fstp-panel{
display:none;
padding:12px;
}
.fstp-panel-default{
display:block;
}
/* when any panel is targeted, hide default */
#tab-eden:target ~ .fstp-panel-default,
#tab-laputa:target ~ .fstp-panel-default,
#tab-faq:target ~ .fstp-panel-default{
display:none;
}
/* show targeted panel */
#tab-eden:target,
#tab-laputa:target,
#tab-faq:target{
display:block;
}
/* panel content style */
.fstp-ptitle{ font-weight:900; font-size:16px; margin-bottom:6px; }
.fstp-ptext{ color: rgba(0,0,0,.72); line-height:1.7; font-size:14px; }
.fstp-plink{ margin-top:8px; font-weight:900; }
.fstp-pills{
margin-top:10px;
display:flex;
flex-wrap:wrap;
gap:10px;
}
.fstp-pill{
display:inline-block;
padding:7px 10px;
border-radius:999px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
font-weight:900;
color: rgba(0,0,0,.70);
font-size:13px;
}
.fstp-tabsnote{
padding:0 12px 12px 12px;
color: rgba(0,0,0,.60);
font-size:13px;
line-height:1.6;
}
/* --- FAQ accordion (target on item itself) --- */
.fstp-acc{
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
background:#fff;
overflow:hidden;
}
.fstp-q{
border-bottom:1px solid rgba(0,0,0,.08);
}
.fstp-q:last-child{ border-bottom:none; }
.fstp-qhead{
padding:12px;
display:flex;
align-items:center;
justify-content:space-between;
gap:10px;
}
.fstp-qt{ font-weight:900; }
.fstp-qctl{
padding:6px 10px;
border-radius:999px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
font-weight:900;
color: rgba(0,0,0,.68);
font-size:12px;
}
/* collapsed by default */
.fstp-qbody{
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 */
.fstp-q:target .fstp-qbody{
max-height: 520px;
opacity:1;
padding: 0 12px 12px 12px;
}
.fstp-mini{
margin:10px 0;
padding:10px 12px;
border-radius:12px;
background:#f6f7fa;
border:1px solid rgba(0,0,0,.06);
}
/* --- timeline --- */
.fstp-tl{
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
background:#fff;
padding: 12px;
}
.fstp-tli{
display:flex;
gap:12px;
padding: 10px 0;
}
.fstp-tli:not(:last-child){
border-bottom:1px dashed rgba(0,0,0,.14);
}
.fstp-tldot{
flex:0 0 10px;
width:10px;
height:10px;
border-radius:999px;
background:#b63737;
margin-top:7px;
box-shadow: 0 0 0 4px rgba(182,55,55,.10);
}
.fstp-tltime{ font-size:12px; color: rgba(0,0,0,.55); font-weight:900; }
.fstp-tltitle{ font-weight:900; margin-top:2px; }
.fstp-tltext{ margin-top:4px; color: rgba(0,0,0,.72); line-height:1.65; font-size:14px; }
/* --- links --- */
.fstp-links{
display:flex;
flex-wrap:wrap;
gap:10px;
}
.fstp-link{
flex: 1 1 220px;
padding:10px 12px;
border-radius:12px;
border:1px solid rgba(0,0,0,.10);
background:#fff;
font-weight:900;
}
.fstp-link:hover{
border-color: rgba(182,55,55,.18);
background:#fbfbfd;
}
/* footer */
.fstp-foot{
margin-top:12px;
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
background:#fff;
overflow:hidden;
}
.fstp-foot-h{
padding:12px;
background:#fbfbfd;
border-bottom:1px solid rgba(0,0,0,.08);
font-weight:900;
}
.fstp-foot-c{
padding:12px;
color: rgba(0,0,0,.72);
line-height:1.75;
}
/* responsive */
@media (max-width: 1024px){
.fstp-hero-right{ display:none; }
}
@media (max-width: 640px){
.fstp-title{ font-size:30px; }
.fstp-kpi{ min-width: 150px; }
}