/* Tools section (tools/make_tool_pages.py). Site palette only: #1c1b1b, #ed2629, #3899ec, #9aa0a6, #f5f5f7, #86868b */
.tl{--tl-r:18px;--tl-sh:0 1px 2px rgba(0,0,0,.04),0 12px 32px -14px rgba(0,0,0,.18)}
.tl .tl-lead{font-size:17px;line-height:1.6;color:#4a4a4a;text-align:center;max-width:640px;margin:0 auto 34px}
.tl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tl-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:24px 22px 22px;border-radius:var(--tl-r);background:#fff;box-shadow:var(--tl-sh);border:1px solid rgba(0,0,0,.06);color:#1c1b1b;text-decoration:none;transition:transform .2s,box-shadow .2s}
.tl-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(0,0,0,.05),0 18px 40px -16px rgba(0,0,0,.25)}
a.tl-card,a.tl-card:visited{color:#1c1b1b}
.tl-card b{color:#1c1b1b;font:20px/1.2 'lp-outfit-700-2',Arial,sans-serif;letter-spacing:-.01em}
.tl-card em{font-style:normal;font-size:14.5px;line-height:1.5;color:#6e6e73}
.tl-ic{width:44px;height:44px;border-radius:12px;background:#fdeaea;color:#ed2629;display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.tl-ic svg{width:24px;height:24px}
/* shared widgets for the tools */
.tl-box{background:#f5f5f7;border-radius:var(--tl-r);padding:22px;margin:0 0 22px}
.tl-panel{background:#fff;border-radius:var(--tl-r);box-shadow:var(--tl-sh);border:1px solid rgba(0,0,0,.06);padding:22px;margin:0 0 22px}
.tl h2{font:30px/1.15 'lp-outfit-700-2',Arial,sans-serif;color:#1c1b1b;margin:46px 0 16px;letter-spacing:-.01em}
.tl h2 span{color:#ed2629}
.tl h3{font:19px/1.25 'lp-outfit-700-2',Arial,sans-serif;color:#1c1b1b;margin:0 0 10px}
.tl p{font-size:16px;line-height:1.65;color:#3a3a3a}
.tl label{display:block;font:13px/1.2 'lp-figtree-600',Arial,sans-serif;color:#6e6e73;margin:0 0 6px}
.tl input[type=text],.tl input[type=number],.tl input[type=time],.tl input[type=date],.tl input[type=search],.tl select{width:100%;box-sizing:border-box;height:46px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;padding:0 18px;font:16px/1 'lp-figtree-300-900-2',Arial,sans-serif;color:#1c1b1b;-webkit-appearance:none;appearance:none}
.tl input:focus,.tl select:focus{outline:none;border-color:#3899ec;box-shadow:0 0 0 3px rgba(56,153,236,.18)}
.tl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 24px;border:0;border-radius:999px;background:#ed2629;color:#fff;font:16px/1 'lp-outfit-700-2',Arial,sans-serif;cursor:pointer;box-shadow:var(--tl-sh)}
.tl-btn.alt{background:#1c1b1b}
.tl-btn.ghost{background:#fff;color:#1c1b1b;border:1px solid rgba(0,0,0,.12)}
.tl-btn:disabled{opacity:.5;cursor:default}
.tl-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0 0 14px}
.tl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
.tl-stat{background:#fff;border-radius:14px;padding:14px 16px;border:1px solid rgba(0,0,0,.06)}
.tl-stat b{display:block;font:26px/1.1 'lp-outfit-700-2',Arial,sans-serif;color:#1c1b1b}
.tl-stat span{font-size:13px;color:#6e6e73}
.tl-note{font-size:13.5px!important;line-height:1.55!important;color:#6e6e73!important}
.tl-src{margin:40px 0 0;padding:20px 22px;border-radius:var(--tl-r);background:#f5f5f7;font-size:13.5px;line-height:1.6;color:#6e6e73}
.tl-src h3{font-size:15px;margin:0 0 8px}
.tl-src a{color:#3899ec}
.tl-src ul{margin:0;padding-left:18px}
.tl-warn{border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:12px;padding:14px 16px;font-size:14.5px;line-height:1.55;color:#3a3a3a;box-shadow:var(--tl-sh);margin:0 0 22px}
@media (max-width:750px){
 .tl .tl-lead{font-size:14px;margin-bottom:22px}
 .tl-grid{grid-template-columns:1fr;gap:12px}
 .tl-card{display:grid;grid-template-columns:34px 1fr;column-gap:12px;row-gap:2px;padding:14px 14px 13px;border-radius:14px}
 .tl-card .tl-ic{grid-row:1/3;margin:0}
 .tl-card b{font-size:16px}.tl-card em{font-size:12.5px}
 .tl-ic{width:34px;height:34px;border-radius:10px}.tl-ic svg{width:19px;height:19px}
 .tl h2{font-size:22px;margin:32px 0 12px}.tl h3{font-size:16px}
 .tl p{font-size:13.5px}
 .tl-box,.tl-panel{padding:16px;border-radius:14px;margin-bottom:16px}
 .tl input[type=text],.tl input[type=number],.tl input[type=time],.tl input[type=date],.tl input[type=search],.tl select{height:40px;font-size:14px;padding:0 14px}
 .tl-btn{height:40px;font-size:14px;padding:0 18px}
 .tl-stat b{font-size:20px}.tl-stat span{font-size:11.5px}
 .tl-src{font-size:12px;padding:14px 16px}
}
