/* Free tools pages (Oct. 20, 2026). Loaded only on /tools pages. */
.tl-form{display:flex;flex-direction:column;gap:14px}
.tl-form .urow{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.tl-form .urow .field{flex:1;min-width:220px}
.tl-form button[type=submit]{border:0;cursor:pointer;min-height:48px}
.tl-form button[disabled]{opacity:.6;cursor:wait}
.tl-form .eg{font-size:13px;color:#a9b5ac;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tl-form .exchip{font:400 12px "Martian Mono",monospace;padding:6px 14px;border-radius:999px;background:rgba(20,29,23,.75);color:#f4f1e6;border:1px solid rgba(255,255,255,.12);cursor:pointer;min-height:44px}
.tl-form .exchip:hover{border-color:#d9ff3d;color:#d9ff3d}
.tl-form .cost{font-size:12px;color:#a9b5ac;margin:0}
.tl-form .opt{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#d5dcd2;line-height:1.45}
.tl-form .opt input,.gbox2 .opt input{width:18px;height:18px;margin:1px 0 0;accent-color:#d9ff3d;flex:none}
.tl-form .opt a{color:#d9ff3d}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.tsbox:empty{display:none}
.tnote{font-size:13px;color:#d5dcd2;margin-top:4px}
.tnote.bad{color:#ffb4a3}
.gbox2 .tnote.bad{color:#9a3b28}
.see2{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.see2 .lbl{font:400 11px "Martian Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:#a9b5ac}
.see2 .chips2{display:flex;gap:8px;flex-wrap:wrap}
.see2 .chips2 span{font-size:13px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#d5dcd2}
/* result card */
.rcard{background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(29,34,31,.1);overflow:hidden;color:#1d221f}
.rcard .rhead{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 26px;border-bottom:1px solid #f0efea}
.rcard .rlabel{font:400 11px "Martian Mono",monospace;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:#1d221f;color:#d9ff3d}
.rcard .rurl{font:400 13px "Martian Mono",monospace;color:#5b645d;overflow-wrap:anywhere}
.rtop2{display:flex;gap:32px;align-items:center;padding:26px;border-bottom:1px solid #f0efea}
.tbig{display:flex;align-items:baseline;gap:6px;flex:none}
.tbig span{font-size:clamp(56px,7vw,88px);letter-spacing:-.045em;line-height:1}
.tbig small{font-size:16px;color:#5b645d}
.rsum{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1}
.tband{align-self:flex-start;font-size:12px;padding:4px 10px;border-radius:999px}
.b-good{background:#1d221f;color:#d9ff3d}.b-warn{background:#f6ebc6;color:#6b5512}.b-bad{background:#fbe1dc;color:#9a3b28}.b-n{background:#f0efea;color:#2c332e}
.rhl{font-size:19px;line-height:1.4;margin:0}
.tbar{height:12px;border-radius:6px;background:#f0efea;overflow:hidden;display:flex}
.tbar i{display:block;height:100%}
.tleg{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#5b645d}
.tleg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.c-a{background:#1d221f}.c-m{background:#e8c65a}.c-x{background:#e5806f}
.rows2{padding:4px 26px}
.rr2{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px 0;border-bottom:1px solid #f0efea;font-size:14px}
.rr2 .n{font:400 11px "Martian Mono",monospace;color:#5b645d;padding-top:3px}
.rr2 .rk{font-weight:500;overflow-wrap:anywhere}
.rr2 .rd{color:#5b645d;font-size:13px;margin-top:4px;line-height:1.5;overflow-wrap:anywhere}
.rr2 .rfix{font-size:13px;margin-top:6px;line-height:1.5;padding:8px 10px;border-radius:8px;background:#f6f5f0;border-left:3px solid #d9ff3d}
.rr2 .rfix b{font:400 12px "Martian Mono",monospace;letter-spacing:.06em;text-transform:uppercase;margin-right:6px}
.g{font-size:12px;padding:4px 10px;border-radius:999px;white-space:nowrap}
.g.a{background:#1d221f;color:#d9ff3d}.g.m{background:#f6ebc6;color:#6b5512}.g.x{background:#fbe1dc;color:#9a3b28}.g.i{background:#f0efea;color:#5b645d}
.gate2{display:grid;grid-template-columns:minmax(0,1fr);padding:0 26px}
.gate2>*{grid-area:1/1;min-width:0}
.gate2 .blur{filter:blur(5px);opacity:.6;pointer-events:none;user-select:none}
.gbox2{align-self:center;justify-self:center;width:100%;max-width:440px;margin:18px 0;background:#fff;border:1px solid #e2e1dc;border-radius:18px;padding:22px;box-shadow:0 20px 50px rgba(29,34,31,.14);display:flex;flex-direction:column;gap:12px}
.gbox2 .h3{font-size:21px}
.gbox2 p{margin:0;font-size:14px;color:#5b645d}
.gbox2 .field{color:#2c332e}
.gbox2 .field input{color:#1d221f;background:#fff;border-color:#d9d7cc}
.gbox2 .opt{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#2c332e;line-height:1.45}
.gbox2 .opt input{accent-color:#1d221f}
.gbox2 .opt a{color:#3d6b06}
.gbox2 button{border:0;cursor:pointer}
.tnotes{margin:0;padding:18px 26px 4px 44px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:#5b645d;line-height:1.5}
.rnext{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:20px 26px 26px}
.pill-o{border:1px solid rgba(29,34,31,.3);color:#1d221f}
.pill-o:hover{background:#f0efea;color:#1d221f}
.tagain{background:none;border:0;color:#3d6b06;font:inherit;font-size:14px;cursor:pointer;text-decoration:underline;min-height:44px;padding:0 8px}
.tload{display:flex;gap:22px;align-items:flex-start;padding:30px 26px}
.tspin{width:28px;height:28px;border-radius:50%;border:3px solid #f0efea;border-top-color:#1d221f;animation:tspin 1s linear infinite;flex:none}
@keyframes tspin{to{transform:rotate(360deg)}}
.tsteps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:15px;color:#a9a99f}
.tsteps li.on{color:#1d221f}.tsteps li.done{color:#5b645d}.tsteps li.done::before{content:"✓ ";color:#3d6b06}
.terr{padding:26px}.terr p{color:#5b645d;margin:8px 0 0}
/* rubric */
.rub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rub .cd{display:flex;flex-direction:column;gap:8px}
.rub .cd b{font-size:16px;font-weight:500;color:#f4f1e6}
.rub .cd p{margin:0;font-size:14px;color:#a9b5ac;line-height:1.5}
.rub .cd .w{font:400 11px "Martian Mono",monospace;color:#d9ff3d;letter-spacing:.04em}
.rel2{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit}
.rel2 .h3{font-size:21px}
.rel2:hover .h3{color:#d9ff3d}
.rel2 .go{color:#d9ff3d;font-size:14px;margin-top:auto}
.free2{align-self:flex-start;font:400 11px "Martian Mono",monospace;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid rgba(217,255,61,.4);color:#d9ff3d}
@media (max-width:900px){
  .rub{grid-template-columns:minmax(0,1fr)}
  .rtop2{flex-direction:column;align-items:flex-start;gap:14px;padding:20px 18px}
  .rows2,.gate2,.rcard .rhead,.rnext{padding-left:18px;padding-right:18px}
  .tnotes{padding-left:36px;padding-right:18px}
  .rr2{grid-template-columns:22px minmax(0,1fr)}
  .rr2 .g{grid-column:2;justify-self:start;white-space:normal}
  .rnext .pill{flex:1 1 auto}
}
/* Live review fixes (Oct. 21): phone gate fit, tap targets, full-width buttons */
.gbox2 .tsbox{max-width:100%;overflow:hidden}
[data-ex]{min-height:44px}
@media (max-width:600px){
  .tl-form button[type=submit]{width:100%}
  .rnext .pill,.gbox2 button{width:100%}
}
@media (max-width:480px){
  .rows2,.rcard .rhead,.rnext{padding-left:14px;padding-right:14px}
  .gate2{padding-left:0;padding-right:0}
  .gbox2{border-radius:0;border-left:0;border-right:0}
  .gbox2{padding:16px;margin:14px 0}
  .rtop2{padding:18px 14px}
  .tnotes{padding-left:30px;padding-right:14px}
}
