.btn{min-width:44px;min-height:44px;padding:var(--sp-3) var(--sp-4);font-family:var(--font-sans);font-size:var(--t-body);border-radius:var(--r-1);cursor:pointer;transition:all var(--duration-short) var(--ease-out);justify-content:center;align-items:center;gap:var(--sp-2);border:none;font-weight:500;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){opacity:.95}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background-color:var(--risk);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--risk-ink)}.btn-primary:focus{outline:2px solid var(--risk);outline-offset:2px}.btn-secondary{border:1px solid var(--rule);color:var(--ink);background-color:#0000}.btn-secondary:hover:not(:disabled){background-color:var(--ink);color:var(--bg)}.btn-secondary:focus{outline:2px solid var(--ink);outline-offset:2px}.btn-ghost{color:var(--ink);background-color:#0000}.btn-ghost:hover:not(:disabled){text-decoration:underline}.btn-ghost:focus{outline:2px solid var(--ink);outline-offset:2px}.btn-sm{padding:var(--sp-2) var(--sp-3);font-size:var(--t-small)}.btn-lg{padding:var(--sp-4) var(--sp-6);font-size:var(--t-body)}
