/* woyao-sebo.cn — 工资条拆解 */
:root{
  --bg:#f2f5f2;
  --card:#ffffff;
  --line:#dde4dd;
  --ink:#192620;
  --ink2:#5c6b63;
  --green:#1d6b4a;
  --green2:#2f9268;
  --rust:#c05621;
  --gold:#b08323;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);
  line-height:1.8;font-size:16px;overflow-x:hidden;
}
img,svg{max-width:100%;height:auto}
a{color:var(--green)}

.wrap{width:100%;max-width:980px;margin:0 auto;padding:0 18px}

.top{background:var(--green);color:#eaf4ee}
.top-in{display:flex;align-items:center;gap:11px;padding:11px 18px}
.sigil{
  width:16px;height:16px;flex:0 0 auto;border-radius:3px;
  background:linear-gradient(135deg,#eaf4ee 0 50%,#9fd9bd 50% 100%);
}
.top-label{margin:0;font-size:.82rem;letter-spacing:.1em}

h1{
  margin:2rem 0 1.2rem;font-size:clamp(1.55rem,6.2vw,2.8rem);line-height:1.24;
  font-weight:800;color:var(--ink);
  border-left:7px solid var(--green);padding-left:14px;
}
.h1-line{
  display:block;margin-top:.45rem;font-style:normal;font-weight:500;
  font-size:clamp(.85rem,3vw,1.06rem);color:var(--ink2);
}

h2{font-size:clamp(1.08rem,3.9vw,1.38rem);margin:0 0 .7rem;color:var(--green);font-weight:700}
h3{font-size:.98rem;margin:0 0 .45rem;color:var(--ink);font-weight:700}
p{margin:0 0 .85rem}
.sub{color:var(--ink2)}
.hint{font-size:.85rem;color:var(--ink2);display:block;margin-top:.3rem}

.plain{
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  padding:18px 20px 10px;margin-bottom:1.6rem;
}
.plain h2{font-size:1rem}
.plain-list{margin:0 0 .6rem;padding-left:1.15em;color:var(--ink2)}
.plain-list li{margin-bottom:.35rem}
.plain-list strong{color:var(--rust)}

.rail{display:flex;flex-wrap:wrap;gap:0;margin:0 0 1.7rem;background:var(--card);
  border:1px solid var(--line);border-radius:10px;overflow:hidden}
.rail a{
  flex:1 1 auto;text-align:center;font-size:.85rem;text-decoration:none;
  color:var(--ink2);padding:9px 12px;border-right:1px solid var(--line);
}
.rail a:last-child{border-right:0}
.rail a:hover{background:#eef5f1;color:var(--green)}

.box{
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  padding:20px 18px;margin:0 0 1.5rem;
}

.warnbar{
  background:#fdf6ec;border:1px solid #f0dcc0;border-left:5px solid var(--gold);
  border-radius:8px;padding:13px 15px;margin:1rem 0;font-size:.92rem;
}
.warnbar p{margin:0 0 .5rem}
.warnbar p:last-child{margin:0}

.form{margin:1.1rem 0 0}
.fgroup{
  border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:12px;
  background:#fafcfa;
}
.fgroup h3{color:var(--green2);font-size:.9rem;letter-spacing:.05em;margin-bottom:.7rem}
.fld{margin-bottom:11px;min-width:0}
.fld label{display:block;font-size:.84rem;color:var(--ink2);margin-bottom:4px}
.fld input,.fld select{
  width:100%;min-width:0;border:1px solid #c7d3cb;border-radius:7px;
  padding:9px 11px;font-size:1rem;background:#fff;color:var(--ink);font-family:var(--mono);
}
.fld select{font-family:var(--sans)}
.fld input:focus,.fld select:focus{outline:2px solid var(--green2);outline-offset:1px}
.duo{display:grid;grid-template-columns:1fr;gap:0 12px}
.fgroup-act{background:none;border:0;padding:0}
#btn-pay{
  width:100%;background:var(--green);color:#fff;border:0;border-radius:8px;
  padding:13px 20px;font-size:1.02rem;font-weight:700;cursor:pointer;font-family:var(--sans);
}
#btn-pay:hover{background:var(--green2)}

.result{margin-top:1.1rem}
.sum{
  display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:1rem;
}
.sum-card{
  border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fafcfa;
}
.sum-card.hero{background:#eaf5ef;border-color:#bfe0cf}
.sum-card .k{display:block;font-size:.82rem;color:var(--ink2)}
.sum-card .v{display:block;font-family:var(--mono);font-size:1.35rem;font-weight:700;color:var(--green);line-height:1.4}
.sum-card.cost .v{color:var(--rust)}
.sum-card.tax .v{color:var(--gold)}

.detail{width:100%;border-collapse:collapse;font-size:.92rem;margin-bottom:.3rem}
.detail th,.detail td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left}
.detail th{font-weight:500;color:var(--ink2)}
.detail td{font-family:var(--mono);text-align:right}
.detail tr.total th{color:var(--ink);font-weight:700}
.detail tr.total td{color:var(--rust);font-weight:700}
.detail tr.sep th,.detail tr.sep td{border-top:2px solid var(--line)}
.err{color:var(--rust);margin:0}

.chartfig{margin:1.2rem 0 0}
#payChart svg{display:block;width:100%;height:auto}
figcaption{font-size:.83rem;color:var(--ink2);margin-top:.45rem}

.who{display:grid;grid-template-columns:1fr;gap:12px;margin-top:.9rem}
.who-item{border:1px solid var(--line);border-radius:10px;padding:13px 15px;background:#fafcfa}
.who-item.unit{border-left:5px solid var(--rust)}
.who-item.both{border-left:5px solid var(--green2)}
.who-item .tag{
  margin:0 0 .4rem;font-size:.8rem;font-weight:700;letter-spacing:.04em;
}
.who-item.unit .tag{color:var(--rust)}
.who-item.both .tag{color:var(--green2)}
.who-item p:last-child{margin:0;font-size:.9rem;color:var(--ink2)}

.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:10px}
table.rate{border-collapse:collapse;width:100%;min-width:520px;font-size:.92rem}
table.rate caption{text-align:left;padding:10px 12px;color:var(--ink2);font-size:.83rem}
table.rate th,table.rate td{padding:9px 12px;border-top:1px solid var(--line);text-align:left}
table.rate thead th{background:#eef5f1;color:var(--green);font-weight:600;border-top:0}
table.rate tbody th{font-family:var(--mono);color:var(--ink2)}
table.rate td{font-family:var(--mono)}

.steps{margin:.6rem 0 0;padding-left:1.3em;color:var(--ink2)}
.steps li{margin-bottom:.5rem}

.src{margin:.4rem 0 0;padding-left:1.15em;color:var(--ink2);font-size:.9rem}
.src li{margin-bottom:.45rem}

.end{border-top:1px solid var(--line);margin-top:1.2rem;padding:20px 0 36px;color:var(--ink2);font-size:.88rem;background:var(--card)}
.end p{margin:0 0 .35rem}

/* 404 */
.gone{padding:2.6rem 0 3.8rem}
.gone-num{font-family:var(--mono);font-size:clamp(2.8rem,15vw,5.6rem);color:#cfdbd4;margin:0;line-height:1}
.gone ul{padding-left:1.15em;color:var(--ink2)}

@media (min-width:620px){
  .duo{grid-template-columns:1fr 1fr}
  .sum{grid-template-columns:1fr 1fr}
  #btn-pay{width:auto;min-width:190px}
}
@media (min-width:900px){
  .sum{grid-template-columns:repeat(4,1fr)}
  .who{grid-template-columns:1fr 1fr}
  .box{padding:26px}
  .duo{grid-template-columns:repeat(4,1fr)}
}
