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

RIA Wiki 已更新到 1.41!部分 CSS 在新版本下可能有不同的表现,请编辑者注意检查和修改。 目前wiki关闭了自行注册账号的功能,如需注册账号,请查阅Help:注册账号

模板:Fstpagetest styles:修订间差异

来自RIA | Wiki
ChenM0M留言 | 贡献
无编辑摘要
ChenM0M留言 | 贡献
无编辑摘要
第1行: 第1行:
/* Fst Portal:门户风(避免框中框与组件堆叠感) */
/* =========================
  testpage_styles (strict)
  avoid 3D, avoid pointer-events, avoid inset/user-select
========================= */


.fstp{
.tst{
   max-width: 1200px;
   max-width: 1200px;
   margin: 0 auto;
   margin: 0 auto;
   padding: 0 14px 24px 14px;
   padding: 0 14px 28px 14px;
   color: rgba(0,0,0,.82);
   color: rgba(0,0,0,.82);
}
}


.fstp a{ color:#9a2a2a; font-weight:700; text-decoration:none; }
.tst a{ color:#9a2a2a; font-weight:700; text-decoration:none; }
.fstp a:hover{ color:#b63737; text-decoration:underline; }
.tst a:hover{ color:#b63737; text-decoration:underline; }


/* Hero:一层容器 */
.tst-muted{
.fstp-hero{
  margin-top:10px;
  font-size:13px;
  color: rgba(0,0,0,.60);
  line-height:1.65;
}
 
/* ---------- HERO ---------- */
.tst-hero{
   display:flex;
   display:flex;
   gap:16px;
   gap:16px;
第20行: 第30行:
   border:1px solid rgba(0,0,0,.08);
   border:1px solid rgba(0,0,0,.08);
   border-radius:16px;
   border-radius:16px;
   background: linear-gradient(180deg,#fbfbfd 0%,#fff 55%);
   background:#fff;
   box-shadow: 0 10px 26px rgba(0,0,0,.08);
   box-shadow: 0 10px 26px rgba(0,0,0,.08);
}
}


.fstp-hero-left{ flex:1 1 auto; min-width:260px; }
.tst-hero-left{ flex:1 1 auto; min-width:260px; }
.fstp-hero-right{ flex:0 0 460px; display:flex; align-items:center; justify-content:center; }
.tst-hero-right{ flex:0 0 460px; display:flex; flex-direction:column; gap:8px; align-items:center; justify-content:center; }


.fstp-kicker{
.tst-hero-image{
  border-radius:14px;
  box-shadow: 0 10px 26px rgba(0,0,0,.10);
}
 
.tst-caption{
  font-size:12px;
  color: rgba(0,0,0,.55);
  align-self:flex-start;
  padding-left:6px;
}
 
.tst-badge{
   display:inline-block;
   display:inline-block;
   padding:4px 10px;
   padding:4px 10px;
第39行: 第61行:
}
}


.fstp-title{
.tst-title{
   margin:10px 0 6px 0;
   margin:10px 0 6px 0;
   font-size:38px;
   font-size:38px;
第46行: 第68行:
}
}


.fstp-desc{
.tst-lead{
   font-size:15px;
   font-size:15px;
   line-height:1.75;
   line-height:1.75;
第52行: 第74行:
}
}


.fstp-hero-links{
/* KPI */
   margin-top:10px;
.tst-kpi{
   font-size:14px;
   display:flex;
   color: rgba(0,0,0,.70);
  gap:10px;
   flex-wrap:wrap;
   margin-top:12px;
}
}


.fstp-hero-image{
.tst-kpi-item{
  padding:10px 12px;
   border-radius:14px;
   border-radius:14px;
   box-shadow: 0 10px 26px rgba(0,0,0,.10);
   background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  min-width: 160px;
}
 
.tst-kpi-num{
  font-size:22px;
  font-weight:900;
}
 
.tst-kpi-text{
  font-size:12px;
  color: rgba(0,0,0,.62);
  margin-top:2px;
}
}


/* 两栏 */
/* nav pills */
.fstp-row{
.tst-nav{
  margin-top:12px;
   display:flex;
   display:flex;
   gap:16px;
   flex-wrap:wrap;
   align-items:flex-start;
   gap:10px;
}
}


.fstp-col-main{ flex: 1 1 auto; min-width:0; }
.tst-navlink{
.fstp-col-side{ flex: 0 0 360px; min-width: 320px; }
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  color: rgba(0,0,0,.70);
  font-weight:900;
  text-decoration:none;
}
.tst-navlink:hover{
  border-color: rgba(182,55,55,.22);
  background: rgba(182,55,55,.08);
  color:#8f1f1f;
  text-decoration:none;
}


/* Box:只有这一层是“卡片” */
/* ---------- SECTION HEADER ---------- */
.fstp-box{
.tst-section{
   border:1px solid rgba(0,0,0,.08);
   margin-top:18px;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  margin-bottom:16px;
}
}


.fstp-box-h{
.tst-section-h{
   padding:12px 14px;
   padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
   background:#fff;
   background:#fff;
   border-bottom:1px solid rgba(0,0,0,.08);
   box-shadow: 0 6px 18px rgba(0,0,0,.06);
  margin-bottom:12px;
}
}


.fstp-box-h h2{
.tst-section-h h2{
   margin:0;
   margin:0;
   font-size:18px;
   font-size:18px;
第95行: 第146行:
}
}


.fstp-box-h-solid{
.tst-section-sub{
   background:#b63737;
  margin-top:4px;
   color:#fff;
  font-size:13px;
   border-bottom: none;
  color: rgba(0,0,0,.60);
}
 
/* ---------- REVEAL NOTICE WALL (2D, no 3D) ---------- */
.tst-revealwall{
   display:flex;
   gap:16px;
   flex-wrap:wrap;
}
}


.fstp-box-h-solid h2{ color:#fff; }
.tst-reveal{
  width:270px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
  overflow:hidden;
}


.fstp-box-c{
.tst-reveal-head{
   padding:14px;
   padding:14px;
   line-height:1.75;
   background:#fff;
}
}


/* Entry:不要卡片,用“条目行”+ hover 侧边提示 */
.tst-reveal-title{
.fstp-entry{
   margin-top:8px;
   display:flex;
   font-size:16px;
   gap:12px;
   font-weight:900;
   padding:12px 10px;
   line-height:1.25;
   border-bottom:1px dashed rgba(0,0,0,.12);
}
}


.fstp-entry:last-child{ border-bottom:none; }
.tst-reveal-sub{
  margin-top:6px;
  font-size:13px;
  color: rgba(0,0,0,.70);
  line-height:1.6;
}


.fstp-entry-ico{
.tst-reveal-body{
   flex:0 0 78px;
   padding:0 14px 14px 14px;
   display:flex;
  font-size:13px;
   align-items:center;
   color: rgba(0,0,0,.72);
   justify-content:center;
   line-height:1.65;
   border-radius:12px;
   opacity:0;
   background:#f3f5f8;
   max-height:0;
   border:1px solid rgba(0,0,0,.06);
   overflow:hidden;
   transition: opacity .18s ease, max-height .18s ease;
}
}


.fstp-entry-ico img{ width:56px; height:56px; object-fit:contain; }
/* hover reveal detail */
.tst-reveal:hover{
  box-shadow:0 14px 28px rgba(0,0,0,.10);
  border-color: rgba(182,55,55,.18);
}
.tst-reveal:hover .tst-reveal-body{
  opacity:1;
  max-height:260px;
}


.fstp-entry-title{
/* tags */
   font-size:16px;
.tst-tag{
  display:inline-block;
  padding:4px 8px;
   font-size:12px;
   font-weight:900;
   font-weight:900;
   margin-bottom:4px;
   border-radius:999px;
  background:rgba(182,55,55,.12);
  color:#8f1f1f;
  border:1px solid rgba(182,55,55,.18);
}
 
.tst-tag-warn{
  background:rgba(255,153,0,.14);
  border-color: rgba(255,153,0,.22);
  color: rgba(110,70,0,.95);
}
 
.tst-tag-cool{
  background:rgba(80,120,255,.12);
  border-color: rgba(80,120,255,.22);
  color: rgba(20,50,140,.95);
}
 
/* ---------- TABS (radio) ---------- */
.tst-tabs{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  overflow:hidden;
}
 
.tst-tab-radio{
  position:absolute;
  left:-9999px;
}
 
.tst-tabbar{
  display:flex;
  gap:8px;
  padding:10px 10px;
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fbfbfd;
}
}


.fstp-entry-text{
.tst-tab{
   font-size:14px;
  cursor:pointer;
  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);
   color: rgba(0,0,0,.72);
}
}


.fstp-entry-go{
.tst-tab:hover{
   margin-top:6px;
   border-color: rgba(182,55,55,.22);
   font-weight:900;
   color:#8f1f1f;
}
}


/* mini blocks */
.tst-panels{
.fstp-minirow{
   padding:14px;
   display:flex;
  gap:12px;
}
}


.fstp-mini{
.tst-panel{
   flex:1 1 0;
   display:none;
   padding:12px;
   padding:12px;
   border-radius:12px;
   border-radius:12px;
   border:1px solid rgba(0,0,0,.08);
   border:1px solid rgba(0,0,0,.08);
   background:#fbfbfd;
   background:#fff;
}
}


.fstp-mini-title{ font-weight:900; font-size:15px; margin-bottom:4px; }
.tst-panel-title{
.fstp-mini-text{ color: rgba(0,0,0,.70); font-size:14px; line-height:1.65; }
  font-weight:900;
.fstp-mini-go{ margin-top:6px; font-weight:900; }
  font-size:16px;
  margin-bottom:6px;
}


/* note / muted */
.tst-panel-text{
.fstp-note{
   color: rgba(0,0,0,.72);
   margin-top:12px;
   line-height:1.7;
  padding:10px 12px;
   font-size:14px;
  border-radius:12px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
   color: rgba(0,0,0,.70);
   font-size:13px;
}
}


.fstp-muted{
.tst-panel-go{
   margin-top:10px;
   margin-top:8px;
  color: rgba(0,0,0,.60);
   font-weight:900;
   font-size:13px;
}
}


/* tags:轻量 */
.tst-pills{
.fstp-tags{
  margin-top:10px;
   display:flex;
   display:flex;
   flex-wrap:wrap;
   flex-wrap:wrap;
第188行: 第305行:
}
}


.fstp-tag{
.tst-pill{
   display:inline-block;
   display:inline-block;
   padding:7px 10px;
   padding:7px 10px;
第199行: 第316行:
}
}


/* 右侧:列表和 pill */
#tsttab-1:checked ~ .tst-tabbar label[for="tsttab-1"],
.fstp-list{
#tsttab-2:checked ~ .tst-tabbar label[for="tsttab-2"],
   font-size:14px;
#tsttab-3:checked ~ .tst-tabbar label[for="tsttab-3"]{
   color: rgba(0,0,0,.74);
  background:#b63737;
  border-color: rgba(0,0,0,.08);
  color:#fff;
}
 
#tsttab-1:checked ~ .tst-panels .tst-panel-1{ display:block; }
#tsttab-2:checked ~ .tst-panels .tst-panel-2{ display:block; }
#tsttab-3:checked ~ .tst-panels .tst-panel-3{ display:block; }
 
/* ---------- ACCORDION (checkbox) ---------- */
.tst-acc{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  overflow:hidden;
}
 
.tst-acc-item{
  border-bottom:1px solid rgba(0,0,0,.08);
}
.tst-acc-item:last-child{ border-bottom:none; }
 
.tst-acc-check{
  position:absolute;
  left:-9999px;
}
 
.tst-acc-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  cursor:pointer;
  background:#fff;
}
 
.tst-acc-q{ font-weight:900; }
 
.tst-acc-ico{
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.10);
  display:flex;
  align-items:center;
  justify-content:center;
   font-weight:900;
  color: rgba(0,0,0,.65);
}
 
.tst-acc-body{
  max-height:0;
  overflow:hidden;
  padding:0 14px;
   color: rgba(0,0,0,.72);
  line-height:1.75;
  transition:max-height .25s ease;
}
 
.tst-acc-check:checked + .tst-acc-head{ background:#fbfbfd; }
.tst-acc-check:checked + .tst-acc-head .tst-acc-ico{
  background: rgba(182,55,55,.10);
  border-color: rgba(182,55,55,.22);
  color:#8f1f1f;
}
.tst-acc-check:checked ~ .tst-acc-body{
  max-height: 520px;
  padding: 0 14px 14px 14px;
}
 
/* callout */
.tst-callout{
  padding:10px 12px;
  border-radius:12px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  margin:10px 0;
  color: rgba(0,0,0,.72);
}
}


.fstp-pill{
/* tooltip (more strict: no pointer-events, no transform) */
.tst-tip{
  position:relative;
   display:inline-block;
   display:inline-block;
  margin-top:10px;
   padding:2px 8px;
   padding:8px 10px;
   border-radius:999px;
   border-radius:999px;
   background: rgba(182,55,55,.10);
   background: rgba(182,55,55,.10);
   border:1px solid rgba(182,55,55,.22);
   border:1px solid rgba(182,55,55,.18);
   color:#8f1f1f;
   color:#8f1f1f;
   font-weight:900;
   font-weight:900;
  cursor:help;
}
.tst-tip::after{
  content: attr(data-tip);
  position:absolute;
  left:0;
  top:140%;
  min-width: 220px;
  max-width: 320px;
  padding:10px 10px;
  border-radius:12px;
  background:#111;
  color:#fff;
  font-weight:700;
  font-size:12px;
  line-height:1.55;
  opacity:0;
  transition: opacity .15s ease;
}
}


/* 底部 */
.tst-tip:hover::after{
.fstp-bottom{
  opacity:1;
  margin-top:16px;
}
 
/* ---------- TIMELINE ---------- */
.tst-tl{
   border:1px solid rgba(0,0,0,.08);
   border:1px solid rgba(0,0,0,.08);
   border-radius:14px;
   border-radius:14px;
   background:#fff;
   background:#fff;
   box-shadow: 0 6px 18px rgba(0,0,0,.06);
   box-shadow: 0 6px 18px rgba(0,0,0,.06);
   overflow:hidden;
   padding: 12px 14px;
}
 
.tst-tl-item{
  display:flex;
  gap:12px;
  padding: 10px 0 10px 0;
}
 
.tst-tl-item:not(:last-child){
  border-bottom:1px dashed rgba(0,0,0,.14);
}
 
.tst-tl-dot{
  flex:0 0 12px;
  width:12px;
  height:12px;
  border-radius:999px;
  background:#b63737;
  margin-top:6px;
  box-shadow: 0 0 0 4px rgba(182,55,55,.12);
}
 
.tst-tl-time{
  font-size:12px;
  color: rgba(0,0,0,.55);
  font-weight:900;
  letter-spacing:.2px;
}
}


.fstp-bottom-h{
.tst-tl-title{
  padding:12px 14px;
  background:#fbfbfd;
  border-bottom:1px solid rgba(0,0,0,.08);
   font-weight:900;
   font-weight:900;
  margin-top:2px;
}
}


.fstp-bottom-c{
.tst-tl-text{
   padding:14px;
   margin-top:4px;
   color: rgba(0,0,0,.72);
   color: rgba(0,0,0,.72);
   line-height:1.75;
   line-height:1.65;
  font-size:14px;
}
 
/* footer block */
.tst-footer{
  margin-top:12px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}
}
.tst-footer-title{ font-weight:900; margin-bottom:6px; }
.tst-footer-links{ color: rgba(0,0,0,.70); line-height:1.7; font-size:14px; }


/* Mobile */
/* ---------- RESPONSIVE ---------- */
@media (max-width: 1024px){
@media (max-width: 1024px){
   .fstp-row{ flex-direction:column; }
   .tst-hero-right{ display:none; }
   .fstp-col-side{ flex:1 1 auto; min-width:0; }
   .tst-reveal{ width: 100%; max-width: 520px; }
  .fstp-hero-right{ display:none; }
}
}


@media (max-width: 640px){
@media (max-width: 640px){
   .fstp-title{ font-size:30px; }
   .tst-title{ font-size:30px; }
   .fstp-minirow{ flex-direction:column; }
   .tst-kpi-item{ min-width: 140px; }
  .tst-tabbar{ flex-wrap:wrap; }
}
}

2026年2月13日 (五) 22:32的版本

/* =========================
   testpage_styles (strict)
   avoid 3D, avoid pointer-events, avoid inset/user-select
========================= */

.tst{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 14px 28px 14px;
  color: rgba(0,0,0,.82);
}

.tst a{ color:#9a2a2a; font-weight:700; text-decoration:none; }
.tst a:hover{ color:#b63737; text-decoration:underline; }

.tst-muted{
  margin-top:10px;
  font-size:13px;
  color: rgba(0,0,0,.60);
  line-height:1.65;
}

/* ---------- HERO ---------- */
.tst-hero{
  display:flex;
  gap:16px;
  align-items:stretch;
  padding:16px;
  margin:14px 0 18px 0;
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px;
  background:#fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.08);
}

.tst-hero-left{ flex:1 1 auto; min-width:260px; }
.tst-hero-right{ flex:0 0 460px; display:flex; flex-direction:column; gap:8px; align-items:center; justify-content:center; }

.tst-hero-image{
  border-radius:14px;
  box-shadow: 0 10px 26px rgba(0,0,0,.10);
}

.tst-caption{
  font-size:12px;
  color: rgba(0,0,0,.55);
  align-self:flex-start;
  padding-left:6px;
}

.tst-badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  background: rgba(182,55,55,.10);
  border:1px solid rgba(182,55,55,.22);
  color:#8f1f1f;
  font-weight:900;
  font-size:12px;
  letter-spacing:.3px;
}

.tst-title{
  margin:10px 0 6px 0;
  font-size:38px;
  font-weight:900;
  letter-spacing:.4px;
}

.tst-lead{
  font-size:15px;
  line-height:1.75;
  color: rgba(0,0,0,.72);
}

/* KPI */
.tst-kpi{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}

.tst-kpi-item{
  padding:10px 12px;
  border-radius:14px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  min-width: 160px;
}

.tst-kpi-num{
  font-size:22px;
  font-weight:900;
}

.tst-kpi-text{
  font-size:12px;
  color: rgba(0,0,0,.62);
  margin-top:2px;
}

/* nav pills */
.tst-nav{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.tst-navlink{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  color: rgba(0,0,0,.70);
  font-weight:900;
  text-decoration:none;
}
.tst-navlink:hover{
  border-color: rgba(182,55,55,.22);
  background: rgba(182,55,55,.08);
  color:#8f1f1f;
  text-decoration:none;
}

/* ---------- SECTION HEADER ---------- */
.tst-section{
  margin-top:18px;
}

.tst-section-h{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  margin-bottom:12px;
}

.tst-section-h h2{
  margin:0;
  font-size:18px;
  font-weight:900;
}

.tst-section-sub{
  margin-top:4px;
  font-size:13px;
  color: rgba(0,0,0,.60);
}

/* ---------- REVEAL NOTICE WALL (2D, no 3D) ---------- */
.tst-revealwall{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
}

.tst-reveal{
  width:270px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
  overflow:hidden;
}

.tst-reveal-head{
  padding:14px;
  background:#fff;
}

.tst-reveal-title{
  margin-top:8px;
  font-size:16px;
  font-weight:900;
  line-height:1.25;
}

.tst-reveal-sub{
  margin-top:6px;
  font-size:13px;
  color: rgba(0,0,0,.70);
  line-height:1.6;
}

.tst-reveal-body{
  padding:0 14px 14px 14px;
  font-size:13px;
  color: rgba(0,0,0,.72);
  line-height:1.65;
  opacity:0;
  max-height:0;
  overflow:hidden;
  transition: opacity .18s ease, max-height .18s ease;
}

/* hover reveal detail */
.tst-reveal:hover{
  box-shadow:0 14px 28px rgba(0,0,0,.10);
  border-color: rgba(182,55,55,.18);
}
.tst-reveal:hover .tst-reveal-body{
  opacity:1;
  max-height:260px;
}

/* tags */
.tst-tag{
  display:inline-block;
  padding:4px 8px;
  font-size:12px;
  font-weight:900;
  border-radius:999px;
  background:rgba(182,55,55,.12);
  color:#8f1f1f;
  border:1px solid rgba(182,55,55,.18);
}

.tst-tag-warn{
  background:rgba(255,153,0,.14);
  border-color: rgba(255,153,0,.22);
  color: rgba(110,70,0,.95);
}

.tst-tag-cool{
  background:rgba(80,120,255,.12);
  border-color: rgba(80,120,255,.22);
  color: rgba(20,50,140,.95);
}

/* ---------- TABS (radio) ---------- */
.tst-tabs{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  overflow:hidden;
}

.tst-tab-radio{
  position:absolute;
  left:-9999px;
}

.tst-tabbar{
  display:flex;
  gap:8px;
  padding:10px 10px;
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fbfbfd;
}

.tst-tab{
  cursor:pointer;
  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);
}

.tst-tab:hover{
  border-color: rgba(182,55,55,.22);
  color:#8f1f1f;
}

.tst-panels{
  padding:14px;
}

.tst-panel{
  display:none;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
}

.tst-panel-title{
  font-weight:900;
  font-size:16px;
  margin-bottom:6px;
}

.tst-panel-text{
  color: rgba(0,0,0,.72);
  line-height:1.7;
  font-size:14px;
}

.tst-panel-go{
  margin-top:8px;
  font-weight:900;
}

.tst-pills{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.tst-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;
}

#tsttab-1:checked ~ .tst-tabbar label[for="tsttab-1"],
#tsttab-2:checked ~ .tst-tabbar label[for="tsttab-2"],
#tsttab-3:checked ~ .tst-tabbar label[for="tsttab-3"]{
  background:#b63737;
  border-color: rgba(0,0,0,.08);
  color:#fff;
}

#tsttab-1:checked ~ .tst-panels .tst-panel-1{ display:block; }
#tsttab-2:checked ~ .tst-panels .tst-panel-2{ display:block; }
#tsttab-3:checked ~ .tst-panels .tst-panel-3{ display:block; }

/* ---------- ACCORDION (checkbox) ---------- */
.tst-acc{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  overflow:hidden;
}

.tst-acc-item{
  border-bottom:1px solid rgba(0,0,0,.08);
}
.tst-acc-item:last-child{ border-bottom:none; }

.tst-acc-check{
  position:absolute;
  left:-9999px;
}

.tst-acc-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  cursor:pointer;
  background:#fff;
}

.tst-acc-q{ font-weight:900; }

.tst-acc-ico{
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.10);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color: rgba(0,0,0,.65);
}

.tst-acc-body{
  max-height:0;
  overflow:hidden;
  padding:0 14px;
  color: rgba(0,0,0,.72);
  line-height:1.75;
  transition:max-height .25s ease;
}

.tst-acc-check:checked + .tst-acc-head{ background:#fbfbfd; }
.tst-acc-check:checked + .tst-acc-head .tst-acc-ico{
  background: rgba(182,55,55,.10);
  border-color: rgba(182,55,55,.22);
  color:#8f1f1f;
}
.tst-acc-check:checked ~ .tst-acc-body{
  max-height: 520px;
  padding: 0 14px 14px 14px;
}

/* callout */
.tst-callout{
  padding:10px 12px;
  border-radius:12px;
  background:#f6f7fa;
  border:1px solid rgba(0,0,0,.06);
  margin:10px 0;
  color: rgba(0,0,0,.72);
}

/* tooltip (more strict: no pointer-events, no transform) */
.tst-tip{
  position:relative;
  display:inline-block;
  padding:2px 8px;
  border-radius:999px;
  background: rgba(182,55,55,.10);
  border:1px solid rgba(182,55,55,.18);
  color:#8f1f1f;
  font-weight:900;
  cursor:help;
}

.tst-tip::after{
  content: attr(data-tip);
  position:absolute;
  left:0;
  top:140%;
  min-width: 220px;
  max-width: 320px;
  padding:10px 10px;
  border-radius:12px;
  background:#111;
  color:#fff;
  font-weight:700;
  font-size:12px;
  line-height:1.55;
  opacity:0;
  transition: opacity .15s ease;
}

.tst-tip:hover::after{
  opacity:1;
}

/* ---------- TIMELINE ---------- */
.tst-tl{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  padding: 12px 14px;
}

.tst-tl-item{
  display:flex;
  gap:12px;
  padding: 10px 0 10px 0;
}

.tst-tl-item:not(:last-child){
  border-bottom:1px dashed rgba(0,0,0,.14);
}

.tst-tl-dot{
  flex:0 0 12px;
  width:12px;
  height:12px;
  border-radius:999px;
  background:#b63737;
  margin-top:6px;
  box-shadow: 0 0 0 4px rgba(182,55,55,.12);
}

.tst-tl-time{
  font-size:12px;
  color: rgba(0,0,0,.55);
  font-weight:900;
  letter-spacing:.2px;
}

.tst-tl-title{
  font-weight:900;
  margin-top:2px;
}

.tst-tl-text{
  margin-top:4px;
  color: rgba(0,0,0,.72);
  line-height:1.65;
  font-size:14px;
}

/* footer block */
.tst-footer{
  margin-top:12px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}
.tst-footer-title{ font-weight:900; margin-bottom:6px; }
.tst-footer-links{ color: rgba(0,0,0,.70); line-height:1.7; font-size:14px; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1024px){
  .tst-hero-right{ display:none; }
  .tst-reveal{ width: 100%; max-width: 520px; }
}

@media (max-width: 640px){
  .tst-title{ font-size:30px; }
  .tst-kpi-item{ min-width: 140px; }
  .tst-tabbar{ flex-wrap:wrap; }
}