*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  background:#f7f9fc;
  color:#1e293b;
  line-height:1.6;
}
a{color:#2563eb;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:880px;margin:0 auto;padding:0 18px}
header{
  background:#fff;
  border-bottom:1px solid #e2e8f0;
  padding:14px 0;
  margin-bottom:28px;
}
header .wrap{display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:700;font-size:18px;color:#0f172a}
nav a{margin-left:18px;font-size:14px;color:#475569}
nav a:hover{color:#2563eb}
h1{font-size:26px;margin:0 0 8px;color:#0f172a}
h2{font-size:20px;margin:28px 0 12px;color:#0f172a}
h3{font-size:16px;margin:20px 0 8px;color:#0f172a}
p{margin:0 0 14px}
.lead{color:#475569;font-size:15px;margin-bottom:24px}
.card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:20px;
  margin-bottom:18px;
}
.card h3{margin-top:0}
.tool-list{display:grid;gap:14px}
.tool-list a{
  display:block;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:16px 20px;
  color:#1e293b;
  transition:border-color .15s;
}
.tool-list a:hover{border-color:#2563eb;text-decoration:none}
.tool-list strong{display:block;font-size:16px;color:#0f172a}
.tool-list span{font-size:13px;color:#64748b}
label{display:block;font-size:13px;color:#475569;margin-bottom:4px}
textarea,input[type=text],input[type=number]{
  width:100%;
  padding:10px 12px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  font:inherit;
  font-size:14px;
  margin-bottom:12px;
  background:#fff;
}
textarea{min-height:140px;resize:vertical}
button{
  padding:9px 18px;
  border:0;
  border-radius:8px;
  background:#2563eb;
  color:#fff;
  font-size:14px;
  cursor:pointer;
  margin-right:8px;
  margin-bottom:8px;
}
button:hover{background:#1d4ed8}
button.secondary{background:#e2e8f0;color:#1e293b}
button.secondary:hover{background:#cbd5e1}
.result{
  background:#f1f5f9;
  border:1px solid #e2e8f0;
  border-radius:8px;
  padding:12px 14px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:13px;
  white-space:pre-wrap;
  word-break:break-all;
  min-height:44px;
  margin-top:8px;
}
.error{color:#dc2626;font-size:13px;margin-top:6px}
footer{
  margin-top:48px;
  padding:24px 0;
  border-top:1px solid #e2e8f0;
  text-align:center;
  font-size:13px;
  color:#94a3b8;
}
