body.page-tools .wrap { max-width:960px; }

.tools-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); gap:1.5rem; padding:2rem 0; }
.tool { display:flex; flex-direction:column; box-shadow:5px 5px 0 var(--shadow); transition:transform .12s, box-shadow .12s; }
.tool:hover { transform:translate(2px,2px); box-shadow:3px 3px 0 var(--shadow); }
.tool:active { transform:translate(5px,5px); box-shadow:0 0 0 var(--shadow); }
.tool .titlebar { background:var(--c); border-bottom-color:var(--ink); }
.tool .titlebar .dot-close { background:#fff; border-color:#0a0a0a; }
.tool .titlebar .tname { color:#0c1322; font-weight:700; }
.tool-body { padding:1.2rem 1.2rem 1.3rem; display:flex; flex-direction:column; gap:0.6rem; flex:1; }
.tool-ico { width:42px; height:42px; border:2.5px solid var(--ink); border-radius:10px; background:var(--win-2); display:grid; place-items:center; color:var(--c); }
.tool-ico svg { width:23px; height:23px; stroke:var(--c); fill:none; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.tool-nm { font-size:1.08rem; font-weight:700; letter-spacing:-0.01em; }
.tool-ds { font-size:0.85rem; color:var(--text-mid); line-height:1.55; }
.tool-meta { margin-top:auto; padding-top:0.4rem; font-family:var(--mono); font-size:0.7rem; color:var(--text-dim); display:flex; align-items:center; }
.tool-meta .a { margin-left:auto; color:var(--c); }
.tool.soon { opacity:.6; cursor:default; }
.tool.soon:hover { transform:none; box-shadow:5px 5px 0 var(--shadow); }