/* HiveMoves free tools — shared bits on top of ../style.css (gap build 2026-11-01). */
.tool-out{background:var(--card);border:1px solid var(--line);border-radius:.5rem;padding:.9rem 1rem;margin:1rem 0}
.tool-out h2,.tool-out h3{margin-top:.2rem}
.tool-big{font-size:1.5rem;font-weight:bold}
.tool-lines{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.98rem}
.tool-lines td{padding:.3rem .4rem;border-bottom:1px solid var(--line)}
.tool-lines td:last-child{text-align:right;font-weight:bold;white-space:nowrap}
.tool-lines tr:last-child td{border-bottom:none}
.rate-grid{display:grid;grid-template-columns:1fr;gap:.55rem;margin:.8rem 0}
.rate-row{display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:baseline;background:var(--card);border:1px solid var(--line);border-radius:.5rem;padding:.6rem .8rem}
.rate-row .rate-name{flex:1 1 16rem}
.rate-row .rate-name b{display:block}
.rate-row .rate-name span{font-size:.9rem;color:var(--muted)}
.rate-opts{display:flex;gap:.35rem}
.rate-opts label{border:1px solid var(--line);border-radius:2rem;padding:.3rem .8rem;cursor:pointer;background:#fff;font-size:.95rem}
.rate-opts input{position:absolute;opacity:0}
.rate-opts label:has(input:checked){background:var(--accent-soft);border-color:var(--accent);font-weight:bold}
.plan-list{margin:.6rem 0;padding-left:1.2rem}
.plan-list li{margin:.45rem 0}
.plan-list .plan-date{font-weight:bold}
